You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In [298]: gOut[298]:
tslevel33138201660001161766932341382016600011625872324413820166000135903774345138201660001359860643
Running groupby() causes my 'ts' value to change and causes some loss of precision in the smallest units. My guess would be somewhere internally this column
is converted to a np.float64 and then returned back as an np.int64.
In [299]: g.groupby('level').last()
Out[299]:
tslevel321382016600011625984431382016600013598720
Type information:
In [300]: g.dtypesOut[300]:
tsint64levelint64dtype: object
Version info:
In [303]: pd.__version__Out[303]: '0.12.0'In [304]: np.__version__Out[304]: '1.7.1'
The text was updated successfully, but these errors were encountered:
its not fused types, but for example, need a definition for group_last_int64 (this part is easy, just a slight modification in the code generator). The harder part is then executing the group block-wise (e.g. by dtype) and dispatching, rather than just casting to floa64 (and then back). A bit tricky because of the splitting/recombing, but more so because you have to handle errors at the cython level when you have overflow (then upcast it). and do it again with a newer type. In some cases this can be predicted so its not a big deal (e.g. in the case of last, you know that you can always have the same return type, but sum could cause upcasting).
Here's what I've in a dataframe to start with:
Running groupby() causes my 'ts' value to change and causes some loss of precision in the smallest units. My guess would be somewhere internally this column
is converted to a np.float64 and then returned back as an np.int64.
Type information:
Version info:
The text was updated successfully, but these errors were encountered: