Open
Description
In order in which we should tackle them:
- 1. Support a custom time index in ewm operations, using the time unit specified via
halflife
(No Pandas issue yet). - 2. DatatimeIndexer add support for DatetimeIndexer #45
- 3. Allow turning on numba by default (Feature Request: Create a Global Setting for Enabling numba engine pandas-dev/pandas#33966).
- 4. Enable full parallelism (
parallel=True
, usenumba.prange
) when doingapply
- 4a.
groupby.apply
(Note: udf must be a reduction op until parallel list comprehension corruption numba/numba#4579 is solved) - 4b.
rolling.apply
- 4c.
groupby.rolling.apply
- 4d.
groupby.agg
- 4e.
groupby.transform
- 4a.
- 5. Ensure readonly is set on all numpy arrays passed to numba (we make a copy of the data before passing to numba func, still needed?)
- 6. Investigate how much time effort it would take to implement the full initial spec (with indexers/aggregators/kernels), without including it in any of the existing APIs. E.g. how hard would it be to implement something like
df._window(indexer, aggregator, kernel)
anddf.groupby._window(indexer, aggregator, kernel)
. - 7. Implement consecutive nan-handling in ewma. (e.g. only keep a nan if it is preceded by X amount of other nans)
- 8. Implement step size in rolling operations (Rolling window with step size pandas-dev/pandas#15354)
- 9. Implement indexers in EWM, along with
.ewm(...).apply
(No pandas issue yet) - 10. Think about weighting calculations: ENH: Rolling Calculations Ignore Extended Window Specification pandas-dev/pandas#34556 (ENH: Support all Scipy window types in rolling(..., win_type) pandas-dev/pandas#37204)
- 11. merge_asof, where tolerance is an indexer; also investigate .reindex which accepts currently a list-like for tolerance.
- 12. Forward looking indexer: ENH: Add VariableForwardWindowIndexer pandas-dev/pandas#34226
- 13. dask backend in ibis: ENH: Dask backend ibis-project/ibis#2245
- 14. DatetimeIndex.get_slice_bound(...) raises TypeErrors for unexpected YYYY-MM-DD/datetime.date/Timestamp combinations pandas-dev/pandas#35690, see if we can put answers to these and see if these are bugs / not
- 15. Tablewise rolling: API: Table-wise rolling / expanding / EWM function application pandas-dev/pandas#15095 (ENH: Add method argument to rolling constructor to allow table-wise rolling pandas-dev/pandas#38417)
- 16. benchmark doing a fixed window but with variable indexers (would help for step size too): REF: Remove rolling window fixed algorithms pandas-dev/pandas#36567
- 17. investigate can we support
.groupby(..).expanding()
via indexers: PERF: ExpandingGroupby pandas-dev/pandas#37064 - 18. investigate can we support
.groupby(..).ewma()
via indexers (ENH: Support groupby.ewm operations pandas-dev/pandas#37878) - 19. if 17) and 18) then can remove internal uses of .apply (old way we did for groupby / rolling) (DOC/REF: Rolling/Expanding/EWM docstrings pandas-dev/pandas#39219)
- 20.
explore for say.rolling(...).mean/sum/max/min
if doing this in numba is faster / can / should we call the cython function. (prob not worth it) - 21. investigate seeing if we can use common functions for aggregation. e.g. windowing: https://github.com/pandas-dev/pandas/blob/master/pandas/_libs/window/aggregations.pyx#L140, and groupby: https://github.com/pandas-dev/pandas/blob/master/pandas/_libs/groupby.pyx#L473
- 22. MultiIndex engine improvement for partial key matching (ENH: improve partial key indexing performance pandas-dev/pandas#38650)
- 23. online ewma (online ewma #46 )
- 24. merge_asof with multi-key (merge_asof with multi-key #47)
- 25. Tablewise ewma
- 26. Implement ewm().sum() (ENH: EWM Sum? pandas-dev/pandas#13297)
Metadata
Metadata
Assignees
Labels
No labels