Spec-Zone.ru › pandas 0.24

pandas.core.window.Rolling.aggregate

Rolling.aggregate(arg, *args, **kwargs) [source]

Агрегирование с использованием одной или нескольких операций по указанной оси.

Параметры:
func : function, str, list or dict

Функция для агрегирования данных. Если это функция, она должна работать при передаче Series/DataFrame или при передаче в Series/DataFrame.apply.

Допустимые комбинации:

  • функция
  • имя функции в виде строки
  • список функций и/или имён функций, например [np.sum, 'mean']
  • словарь меток осей -> функций, имён функций или списков таких.
*args

Позиционные аргументы для передачи в func.

**kwargs

Ключевые аргументы для передачи в func.

Возвращает:
DataFrame, Series или скалярное значение

если DataFrame.agg вызывается с одной функцией, возвращает Series; если DataFrame.agg вызывается с несколькими функциями, возвращает DataFrame; если Series.agg вызывается с одной функцией, возвращает скалярное значение; если Series.agg вызывается с несколькими функциями, возвращает Series

См. также

pandas.Series.rolling, pandas.DataFrame.rolling

Примечания

agg является псевдонимом для aggregate. Используйте псевдоним.

Переданная пользовательская функция будет передана Series для оценки.

Примеры

>>> df = pd.DataFrame(np.random.randn(10, 3), columns=['A', 'B', 'C'])
>>> df
          A         B         C
0 -2.385977 -0.102758  0.438822
1 -1.004295  0.905829 -0.954544
2  0.735167 -0.165272 -1.619346
3 -0.702657 -1.340923 -0.706334
4 -0.246845  0.211596 -0.901819
5  2.463718  3.157577 -1.380906
6 -1.142255  2.340594 -0.039875
7  1.396598 -1.647453  1.677227
8 -0.543425  1.761277 -0.220481
9 -0.640505  0.289374 -1.550670
>>> df.rolling(3).sum()
          A         B         C
0       NaN       NaN       NaN
1       NaN       NaN       NaN
2 -2.655105  0.637799 -2.135068
3 -0.971785 -0.600366 -3.280224
4 -0.214334 -1.294599 -3.227500
5  1.514216  2.028250 -2.989060
6  1.074618  5.709767 -2.322600
7  2.718061  3.850718  0.256446
8 -0.289082  2.454418  1.416871
9  0.212668  0.403198 -0.093924
>>> df.rolling(3).agg({'A':'sum', 'B':'min'})
          A         B
0       NaN       NaN
1       NaN       NaN
2 -2.655105 -0.165272
3 -0.971785 -1.340923
4 -0.214334 -1.340923
5  1.514216 -1.340923
6  1.074618  0.211596
7  2.718061 -1.647453
8 -0.289082 -1.647453
9  0.212668 -1.647453

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.24.2/reference/api/pandas.core.window.Rolling.aggregate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API