From dd47e19dd3960a663e3c1e3fdb1f3b06e3f9c390 Mon Sep 17 00:00:00 2001 From: arthurlw Date: Thu, 24 Apr 2025 17:45:13 -0700 Subject: [PATCH 1/2] updated expanding args --- pandas/core/groupby/groupby.py | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index f74c20eaa0284..c331749d0b13d 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -3809,24 +3809,31 @@ def rolling( ) @final - def expanding(self, *args, **kwargs) -> ExpandingGroupby: + def expanding( + self, + min_periods: int = 1, + method: str = "single", + ) -> ExpandingGroupby: """ Return an expanding grouper, providing expanding functionality per group. - Arguments are the same as `:meth:DataFrame.rolling` except that ``step`` cannot - be specified. - Parameters ---------- - *args : tuple - Positional arguments passed to the expanding window constructor. - **kwargs : dict - Keyword arguments passed to the expanding window constructor. + min_periods : int, default 1 + Minimum number of observations in window required to have a value; + otherwise, result is ``np.nan``. + + method : str {'single', 'table'}, default 'single' + Execute the expanding operation per single column or row (``'single'``) + or over the entire object (``'table'``). + + This argument is only implemented when specifying ``engine='numba'`` + in the method call. Returns ------- pandas.api.typing.ExpandingGroupby - An object that supports expanding transformations over each group. + An object that supports expanding transformations over each group See Also -------- @@ -3844,7 +3851,7 @@ def expanding(self, *args, **kwargs) -> ExpandingGroupby: ... } ... ) >>> df - Class Value + Class Value 0 A 10 1 A 20 2 A 30 @@ -3853,7 +3860,7 @@ def expanding(self, *args, **kwargs) -> ExpandingGroupby: 5 B 60 >>> df.groupby("Class").expanding().mean() - Value + Value Class A 0 10.0 1 15.0 @@ -3866,9 +3873,9 @@ def expanding(self, *args, **kwargs) -> ExpandingGroupby: return ExpandingGroupby( self._selected_obj, - *args, + min_periods=min_periods, + method=method, _grouper=self._grouper, - **kwargs, ) @final From ef5f58216b55575a4c3ec0ddc26dbc96d35a0d85 Mon Sep 17 00:00:00 2001 From: arthurlw Date: Thu, 24 Apr 2025 18:14:43 -0700 Subject: [PATCH 2/2] fixed punctuation --- pandas/core/groupby/groupby.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index c331749d0b13d..4a6f8a1159688 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -3833,7 +3833,7 @@ def expanding( Returns ------- pandas.api.typing.ExpandingGroupby - An object that supports expanding transformations over each group + An object that supports expanding transformations over each group. See Also --------