Yoav Kallus
Yoav Kallus
Presumably you want this instead? `rt.putmask(tmp1['h'], tmp1.f == 1, tmp1.groupby(['f'])['h'].shift(-1)['h'])`
I think it is expected behavior in python for only zero-valued floats to test as false. Compare: ``` if 0.: print('0 tests as true') if np.nan: print('nan tests as true')...
related to https://github.com/rtosholdings/riptable/issues/124?
Using Categorical.apply_nonreduce with computable=False is a work-around: `tmp1.cat('f').apply_nonreduce(lambda x: rt.FA.shift(x, -1), tmp1['g'], computable=False)`