Skip to content

Commit ea23dd9

Browse files
authored
Allow importing from xarray.groupers (#9289)
1 parent 470d1e8 commit ea23dd9

File tree

13 files changed

+24
-25
lines changed

13 files changed

+24
-25
lines changed

doc/api-hidden.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -694,6 +694,6 @@
694694
coding.times.CFTimedeltaCoder
695695
coding.times.CFDatetimeCoder
696696

697-
core.groupers.Grouper
698-
core.groupers.Resampler
699-
core.groupers.EncodedGroups
697+
groupers.Grouper
698+
groupers.Resampler
699+
groupers.EncodedGroups

doc/api.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@ DataArray
806806
Grouper Objects
807807
---------------
808808

809-
.. currentmodule:: xarray.core
809+
.. currentmodule:: xarray
810810

811811
.. autosummary::
812812
:toctree: generated/

doc/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,8 @@
158158
"Variable": "~xarray.Variable",
159159
"DatasetGroupBy": "~xarray.core.groupby.DatasetGroupBy",
160160
"DataArrayGroupBy": "~xarray.core.groupby.DataArrayGroupBy",
161-
"Grouper": "~xarray.core.groupers.Grouper",
162-
"Resampler": "~xarray.core.groupers.Resampler",
161+
"Grouper": "~xarray.groupers.Grouper",
162+
"Resampler": "~xarray.groupers.Resampler",
163163
# objects without namespace: numpy
164164
"ndarray": "~numpy.ndarray",
165165
"MaskedArray": "~numpy.ma.MaskedArray",

xarray/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from importlib.metadata import version as _version
22

3-
from xarray import testing, tutorial
3+
from xarray import groupers, testing, tutorial
44
from xarray.backends.api import (
55
load_dataarray,
66
load_dataset,
@@ -14,7 +14,6 @@
1414
from xarray.coding.cftimeindex import CFTimeIndex
1515
from xarray.coding.frequencies import infer_freq
1616
from xarray.conventions import SerializationWarning, decode_cf
17-
from xarray.core import groupers
1817
from xarray.core.alignment import align, broadcast
1918
from xarray.core.combine import combine_by_coords, combine_nested
2019
from xarray.core.common import ALL_DIMS, full_like, ones_like, zeros_like

xarray/core/common.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838

3939
from xarray.core.dataarray import DataArray
4040
from xarray.core.dataset import Dataset
41-
from xarray.core.groupers import Resampler
4241
from xarray.core.indexes import Index
4342
from xarray.core.resample import Resample
4443
from xarray.core.rolling_exp import RollingExp
@@ -53,6 +52,7 @@
5352
T_Variable,
5453
)
5554
from xarray.core.variable import Variable
55+
from xarray.groupers import Resampler
5656

5757
DTypeMaybeMapping = Union[DTypeLikeSave, Mapping[Any, DTypeLikeSave]]
5858

@@ -1048,8 +1048,8 @@ def _resample(
10481048

10491049
from xarray.core.dataarray import DataArray
10501050
from xarray.core.groupby import ResolvedGrouper
1051-
from xarray.core.groupers import Resampler, TimeResampler
10521051
from xarray.core.resample import RESAMPLE_DIM
1052+
from xarray.groupers import Resampler, TimeResampler
10531053

10541054
indexer = either_dict_or_kwargs(indexer, indexer_kwargs, "resample")
10551055
if len(indexer) != 1:

xarray/core/dataarray.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@
8888
from xarray.backends import ZarrStore
8989
from xarray.backends.api import T_NetcdfEngine, T_NetcdfTypes
9090
from xarray.core.groupby import DataArrayGroupBy
91-
from xarray.core.groupers import Grouper, Resampler
9291
from xarray.core.resample import DataArrayResample
9392
from xarray.core.rolling import DataArrayCoarsen, DataArrayRolling
9493
from xarray.core.types import (
@@ -112,6 +111,7 @@
112111
T_Xarray,
113112
)
114113
from xarray.core.weighted import DataArrayWeighted
114+
from xarray.groupers import Grouper, Resampler
115115
from xarray.namedarray.parallelcompat import ChunkManagerEntrypoint
116116

117117
T_XarrayOther = TypeVar("T_XarrayOther", bound=Union["DataArray", Dataset])
@@ -6788,7 +6788,7 @@ def groupby(
67886788
ResolvedGrouper,
67896789
_validate_groupby_squeeze,
67906790
)
6791-
from xarray.core.groupers import UniqueGrouper
6791+
from xarray.groupers import UniqueGrouper
67926792

67936793
_validate_groupby_squeeze(squeeze)
67946794

@@ -6893,7 +6893,7 @@ def groupby_bins(
68936893
ResolvedGrouper,
68946894
_validate_groupby_squeeze,
68956895
)
6896-
from xarray.core.groupers import BinGrouper
6896+
from xarray.groupers import BinGrouper
68976897

68986898
_validate_groupby_squeeze(squeeze)
68996899
grouper = BinGrouper(

xarray/core/dataset.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,6 @@
138138
from xarray.backends.api import T_NetcdfEngine, T_NetcdfTypes
139139
from xarray.core.dataarray import DataArray
140140
from xarray.core.groupby import DatasetGroupBy
141-
from xarray.core.groupers import Grouper, Resampler
142141
from xarray.core.merge import CoercibleMapping, CoercibleValue, _MergeResult
143142
from xarray.core.resample import DatasetResample
144143
from xarray.core.rolling import DatasetCoarsen, DatasetRolling
@@ -166,6 +165,7 @@
166165
T_Xarray,
167166
)
168167
from xarray.core.weighted import DatasetWeighted
168+
from xarray.groupers import Grouper, Resampler
169169
from xarray.namedarray.parallelcompat import ChunkManagerEntrypoint
170170

171171

@@ -2709,7 +2709,7 @@ def chunk(
27092709
dask.array.from_array
27102710
"""
27112711
from xarray.core.dataarray import DataArray
2712-
from xarray.core.groupers import TimeResampler
2712+
from xarray.groupers import TimeResampler
27132713

27142714
if chunks is None and not chunks_kwargs:
27152715
warnings.warn(
@@ -10370,7 +10370,7 @@ def groupby(
1037010370
ResolvedGrouper,
1037110371
_validate_groupby_squeeze,
1037210372
)
10373-
from xarray.core.groupers import UniqueGrouper
10373+
from xarray.groupers import UniqueGrouper
1037410374

1037510375
_validate_groupby_squeeze(squeeze)
1037610376

@@ -10473,7 +10473,7 @@ def groupby_bins(
1047310473
ResolvedGrouper,
1047410474
_validate_groupby_squeeze,
1047510475
)
10476-
from xarray.core.groupers import BinGrouper
10476+
from xarray.groupers import BinGrouper
1047710477

1047810478
_validate_groupby_squeeze(squeeze)
1047910479
grouper = BinGrouper(

xarray/core/groupby.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@
5252

5353
from xarray.core.dataarray import DataArray
5454
from xarray.core.dataset import Dataset
55-
from xarray.core.groupers import Grouper
5655
from xarray.core.types import GroupIndex, GroupIndices, GroupKey
5756
from xarray.core.utils import Frozen
57+
from xarray.groupers import Grouper
5858

5959

6060
def check_reduce_dims(reduce_dims, dimensions):
@@ -581,7 +581,7 @@ def _iter_grouped(self) -> Iterator[T_Xarray]:
581581
yield self._obj.isel({self._group_dim: indices})
582582

583583
def _infer_concat_args(self, applied_example):
584-
from xarray.core.groupers import BinGrouper
584+
from xarray.groupers import BinGrouper
585585

586586
(grouper,) = self.groupers
587587
if self._group_dim in applied_example.dims:
@@ -695,7 +695,7 @@ def _maybe_restore_empty_groups(self, combined):
695695
"""Our index contained empty groups (e.g., from a resampling or binning). If we
696696
reduced on that dimension, we want to restore the full index.
697697
"""
698-
from xarray.core.groupers import BinGrouper, TimeResampler
698+
from xarray.groupers import BinGrouper, TimeResampler
699699

700700
(grouper,) = self.groupers
701701
if (
@@ -731,7 +731,7 @@ def _flox_reduce(
731731
from flox.xarray import xarray_reduce
732732

733733
from xarray.core.dataset import Dataset
734-
from xarray.core.groupers import BinGrouper
734+
from xarray.groupers import BinGrouper
735735

736736
obj = self._original_obj
737737
(grouper,) = self.groupers

xarray/core/resample.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
from xarray.core.dataarray import DataArray
1616
from xarray.core.dataset import Dataset
1717

18-
from xarray.core.groupers import RESAMPLE_DIM
18+
from xarray.groupers import RESAMPLE_DIM
1919

2020

2121
class Resample(GroupBy[T_Xarray]):

xarray/core/types.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@
3939
from xarray.core.coordinates import Coordinates
4040
from xarray.core.dataarray import DataArray
4141
from xarray.core.dataset import Dataset
42-
from xarray.core.groupers import TimeResampler
4342
from xarray.core.indexes import Index, Indexes
4443
from xarray.core.utils import Frozen
4544
from xarray.core.variable import Variable
45+
from xarray.groupers import TimeResampler
4646

4747
try:
4848
from dask.array import Array as DaskArray

0 commit comments

Comments
 (0)