From dfc4c4bb04c84e7d18dbe378a8c741b66ca8ece0 Mon Sep 17 00:00:00 2001 From: Irina Truong Date: Fri, 10 Feb 2023 14:20:53 -0800 Subject: [PATCH] Move the change into value_counts. --- dask/dataframe/groupby.py | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/dask/dataframe/groupby.py b/dask/dataframe/groupby.py index cfba3dcd1e5..d7f4ecb0df8 100644 --- a/dask/dataframe/groupby.py +++ b/dask/dataframe/groupby.py @@ -1543,16 +1543,10 @@ def _single_agg( with check_numeric_only_deprecation(): meta = func(self._meta_nonempty, **chunk_kwargs) - if is_series_like(meta): - # in pandas 2.0, Series returned from value_counts have a name - # different from original object, but here, column name should - # still reflect the original object name - if func is _value_counts: - columns = self._meta.apply(pd.Series).name - else: - columns = meta.name - else: - columns = meta.columns + if "columns" not in chunk_kwargs: + chunk_kwargs["columns"] = ( + meta.name if is_series_like(meta) else meta.columns + ) args = [self.obj] + (self.by if isinstance(self.by, list) else [self.by]) @@ -1565,7 +1559,6 @@ def _single_agg( chunk=_apply_chunk, chunk_kwargs={ "chunk": func, - "columns": columns, **self.observed, **self.dropna, **chunk_kwargs, @@ -1590,7 +1583,6 @@ def _single_agg( chunk=_apply_chunk, chunk_kwargs=dict( chunk=func, - columns=columns, **self.observed, **chunk_kwargs, **self.dropna, @@ -2957,6 +2949,10 @@ def agg(self, arg=None, split_every=None, split_out=1, shuffle=None, **kwargs): @derived_from(pd.core.groupby.SeriesGroupBy) def value_counts(self, split_every=None, split_out=1, shuffle=None): + # in pandas 2.0, Series returned from value_counts have a name + # different from original object, but here, column name should + # still reflect the original object name + chunk_kwargs = {"columns": self._meta.apply(pd.Series).name} return self._single_agg( func=_value_counts, token="value_counts", @@ -2964,6 +2960,7 @@ def value_counts(self, split_every=None, split_out=1, shuffle=None): split_every=split_every, split_out=split_out, shuffle=shuffle, + chunk_kwargs=chunk_kwargs, ) @derived_from(pd.core.groupby.SeriesGroupBy)