Releases: xarray-contrib/flox
v0.8.3
What's Changed
- Fix reordering of dataarray dimensions inside dataset by @eendebakpt in #289
New Contributors
- @eendebakpt made their first contribution in #289
Full Changelog: v0.8.2...v0.8.3
v0.8.2
Major performance improvements (yet again!) Thanks to @max-sixty for prompting these.
What's Changed
- Properly dispatch to numbagg when we can by @dcherian in #282
- Actually optimize out multiple "nanlen" by @dcherian in #283
- Set order='F' when raveling group_idx after broadcast by @dcherian in #286
Full Changelog: v0.8.1...v0.8.2
v0.8.1
Fix packaging of v0.8.0
See v0.8.0 release notes for all changes
v0.8.0
What's Changed
Major performance improvements!!!
-
Support numbagg through
engine="numbagg"
for many common nan-skipping reductions in #72. Using numbagg appears to be a major speedup (2x-3x in general, 6X for nanmean). Special thanks to @max-sixty for major work on numbagg's grouped aggregations! Here are timings for reducing a 2D array along the last axis with ordered group labels.func engine nansum flox 70.3±0.2ms numpy 122±0.2ms numbagg 18.4±0.04ms nanmean flox 144±0.4ms numpy 196±0.5ms numbagg 23.7±0.2ms nanmax flox 93.4±0.8ms numpy 953±2ms numbagg 20.3±0.2ms count flox 59.8±1ms numpy 114±0.2ms numbagg 29.3±0.1ms -
Support
engine=None
in #266. This will- Use
numbagg
if available - If not, use flox if the group labels are sorted
- Fallback to numpy otherwise.
Thanks to @mathause for kicking off this work.
- Use
-
Significant speed to detecting "cohorts" of groups in #272
Other Major Changes
- Test and support for python 3.12 (note numba does not support 3.12 yet)
- Bump minimum numpy version to 1.22.
- New Aggregations : Support
quantile
,median
,mode
withmethod="blockwise"
. by @dcherian in #269 - Add multidimensional bins demo notebook by @dcherian in #203 . This is useful for prediction/forecasting problems.
Minor Changes
- Delete resample_reduce by @dcherian in #246
- Fix test failure on i386 by @avalentino in #248
- typing fixes by @Illviljan in #235, #253
- replace the deprecated
provision-with-micromamba
withsetup-micromamba
by @keewis in #258 - compatibility with
numpy>=2.0
by @keewis in #257 - convert datetime: micro-optimizations by @mathause in #261
New Contributors
Full Changelog: v0.7.2...v0.8.0
v0.7.2
v0.7.1
v0.7.0
v0.6.10
v0.6.9
What's Changed
- add expected groups benchmark by @Illviljan in #218
- Use np.digitize instead of pd.cut by @Illviljan in #217
- Don't use deprecated distutils module. by @sebastic in #221
- Make sure to pass through range indexes by @dcherian in #225
- Add more type hints by @Illviljan in #219
- Micro-optimize: Use ._indexes instead of xindexes. by @dcherian in #226
- Small cleanup in factorize by @dcherian in #220
New Contributors
Full Changelog: v0.6.8...v0.6.9
v0.6.8
What's Changed
Mostly bugfixes and a small doc improvement
- Recognize grouping by IntervalIndex as binning by @dcherian in #205
- docs: Add introduction to flox by @dcherian in #206
- Propagate multi-indexes properly by @TomNicholas in #216
New Contributors
- @TomNicholas made their first contribution in #216
Full Changelog: v0.6.7...v0.6.8