@@ -316,26 +316,6 @@ def _insert_on_column(self, result: "DataFrame", obj: "DataFrame"):
316316 # insert at the end
317317 result [name ] = extra_col
318318
319- def _get_roll_func (self , func_name : str ) -> Callable [..., Any ]:
320- """
321- Wrap rolling function to check values passed.
322-
323- Parameters
324- ----------
325- func_name : str
326- Cython function used to calculate rolling statistics
327-
328- Returns
329- -------
330- func : callable
331- """
332- window_func = getattr (window_aggregations , func_name , None )
333- if window_func is None :
334- raise ValueError (
335- f"we do not support this function in window_aggregations.{ func_name } "
336- )
337- return window_func
338-
339319 @property
340320 def _index_array (self ):
341321 # TODO: why do we get here with e.g. MultiIndex?
@@ -1153,21 +1133,21 @@ def aggregate(self, func, *args, **kwargs):
11531133 @Appender (_shared_docs ["sum" ])
11541134 def sum (self , * args , ** kwargs ):
11551135 nv .validate_window_func ("sum" , args , kwargs )
1156- window_func = self . _get_roll_func ( " roll_weighted_sum" )
1136+ window_func = window_aggregations . roll_weighted_sum
11571137 return self ._apply (window_func , name = "sum" , ** kwargs )
11581138
11591139 @Substitution (name = "window" )
11601140 @Appender (_shared_docs ["mean" ])
11611141 def mean (self , * args , ** kwargs ):
11621142 nv .validate_window_func ("mean" , args , kwargs )
1163- window_func = self . _get_roll_func ( " roll_weighted_mean" )
1143+ window_func = window_aggregations . roll_weighted_mean
11641144 return self ._apply (window_func , name = "mean" , ** kwargs )
11651145
11661146 @Substitution (name = "window" , versionadded = "\n .. versionadded:: 1.0.0\n " )
11671147 @Appender (_shared_docs ["var" ])
11681148 def var (self , ddof : int = 1 , * args , ** kwargs ):
11691149 nv .validate_window_func ("var" , args , kwargs )
1170- window_func = partial (self . _get_roll_func ( " roll_weighted_var" ) , ddof = ddof )
1150+ window_func = partial (window_aggregations . roll_weighted_var , ddof = ddof )
11711151 kwargs .pop ("name" , None )
11721152 return self ._apply (window_func , name = "var" , ** kwargs )
11731153
@@ -1221,7 +1201,7 @@ class RollingAndExpandingMixin(BaseWindow):
12211201 )
12221202
12231203 def count (self ):
1224- window_func = self . _get_roll_func ( " roll_sum" )
1204+ window_func = window_aggregations . roll_sum
12251205 return self ._apply (window_func , name = "count" )
12261206
12271207 _shared_docs ["apply" ] = dedent (
@@ -1331,7 +1311,7 @@ def _generate_cython_apply_func(
13311311 from pandas import Series
13321312
13331313 window_func = partial (
1334- self . _get_roll_func ( " roll_apply" ) ,
1314+ window_aggregations . roll_apply ,
13351315 args = args ,
13361316 kwargs = kwargs ,
13371317 raw = raw ,
@@ -1347,7 +1327,7 @@ def apply_func(values, begin, end, min_periods, raw=raw):
13471327
13481328 def sum (self , * args , ** kwargs ):
13491329 nv .validate_window_func ("sum" , args , kwargs )
1350- window_func = self . _get_roll_func ( " roll_sum" )
1330+ window_func = window_aggregations . roll_sum
13511331 return self ._apply (window_func , name = "sum" , ** kwargs )
13521332
13531333 _shared_docs ["max" ] = dedent (
@@ -1363,7 +1343,7 @@ def sum(self, *args, **kwargs):
13631343
13641344 def max (self , * args , ** kwargs ):
13651345 nv .validate_window_func ("max" , args , kwargs )
1366- window_func = self . _get_roll_func ( " roll_max" )
1346+ window_func = window_aggregations . roll_max
13671347 return self ._apply (window_func , name = "max" , ** kwargs )
13681348
13691349 _shared_docs ["min" ] = dedent (
@@ -1405,12 +1385,12 @@ def max(self, *args, **kwargs):
14051385
14061386 def min (self , * args , ** kwargs ):
14071387 nv .validate_window_func ("min" , args , kwargs )
1408- window_func = self . _get_roll_func ( " roll_min" )
1388+ window_func = window_aggregations . roll_min
14091389 return self ._apply (window_func , name = "min" , ** kwargs )
14101390
14111391 def mean (self , * args , ** kwargs ):
14121392 nv .validate_window_func ("mean" , args , kwargs )
1413- window_func = self . _get_roll_func ( " roll_mean" )
1393+ window_func = window_aggregations . roll_mean
14141394 return self ._apply (window_func , name = "mean" , ** kwargs )
14151395
14161396 _shared_docs ["median" ] = dedent (
@@ -1451,14 +1431,14 @@ def mean(self, *args, **kwargs):
14511431 )
14521432
14531433 def median (self , ** kwargs ):
1454- window_func = self . _get_roll_func ( " roll_median_c" )
1434+ window_func = window_aggregations . roll_median_c
14551435 # GH 32865. Move max window size calculation to
14561436 # the median function implementation
14571437 return self ._apply (window_func , name = "median" , ** kwargs )
14581438
14591439 def std (self , ddof : int = 1 , * args , ** kwargs ):
14601440 nv .validate_window_func ("std" , args , kwargs )
1461- window_func = self . _get_roll_func ( " roll_var" )
1441+ window_func = window_aggregations . roll_var
14621442
14631443 def zsqrt_func (values , begin , end , min_periods ):
14641444 return zsqrt (window_func (values , begin , end , min_periods , ddof = ddof ))
@@ -1471,7 +1451,7 @@ def zsqrt_func(values, begin, end, min_periods):
14711451
14721452 def var (self , ddof : int = 1 , * args , ** kwargs ):
14731453 nv .validate_window_func ("var" , args , kwargs )
1474- window_func = partial (self . _get_roll_func ( " roll_var" ) , ddof = ddof )
1454+ window_func = partial (window_aggregations . roll_var , ddof = ddof )
14751455 return self ._apply (
14761456 window_func ,
14771457 name = "var" ,
@@ -1490,7 +1470,7 @@ def var(self, ddof: int = 1, *args, **kwargs):
14901470 """
14911471
14921472 def skew (self , ** kwargs ):
1493- window_func = self . _get_roll_func ( " roll_skew" )
1473+ window_func = window_aggregations . roll_skew
14941474 return self ._apply (
14951475 window_func ,
14961476 name = "skew" ,
@@ -1583,7 +1563,7 @@ def sem(self, ddof: int = 1, *args, **kwargs):
15831563 )
15841564
15851565 def kurt (self , ** kwargs ):
1586- window_func = self . _get_roll_func ( " roll_kurt" )
1566+ window_func = window_aggregations . roll_kurt
15871567 return self ._apply (
15881568 window_func ,
15891569 name = "kurt" ,
@@ -1646,12 +1626,12 @@ def kurt(self, **kwargs):
16461626
16471627 def quantile (self , quantile : float , interpolation : str = "linear" , ** kwargs ):
16481628 if quantile == 1.0 :
1649- window_func = self . _get_roll_func ( " roll_max" )
1629+ window_func = window_aggregations . roll_max
16501630 elif quantile == 0.0 :
1651- window_func = self . _get_roll_func ( " roll_min" )
1631+ window_func = window_aggregations . roll_min
16521632 else :
16531633 window_func = partial (
1654- self . _get_roll_func ( " roll_quantile" ) ,
1634+ window_aggregations . roll_quantile ,
16551635 quantile = quantile ,
16561636 interpolation = interpolation ,
16571637 )
0 commit comments