Spec-Zone.ru › pandas 1

pandas.core.resample.Resampler.aggregate

Resampler.aggregate(func=None, *args, **kwargs)[source]

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

Параметры
func:функция, строка, список или словарь

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

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

  • функция

  • имя функции в виде строки

  • список функций и/или имён функций, например [np.sum, 'mean']

  • словарь меток оси -> функции, имена функций или список таких.

*args

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

**kwargs

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

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

Возврат может быть:

  • скаляр: когда вызывается Series.agg с единственной функцией

  • Series: когда вызывается DataFrame.agg с единственной функцией

  • DataFrame: когда вызывается DataFrame.agg с несколькими функциями

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

См. также

DataFrame.groupby.aggregate

Агрегирование с использованием вызываемой функции, строки, словаря или списка строк/вызываемых функций.

DataFrame.resample.transform

Преобразование Series в каждой группе на основе заданной функции.

DataFrame.aggregate

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

Примечания

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

Функции, которые изменяют переданный объект, могут привести к неожиданному поведению или ошибкам и не поддерживаются. Подробности см. в разделе Изменение с помощью пользовательских функций (UDF) методов.

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

Примеры

>>> s = pd.Series([1, 2, 3, 4, 5],
...               index=pd.date_range('20130101', periods=5, freq='s'))
>>> s
2013-01-01 00:00:00    1
2013-01-01 00:00:01    2
2013-01-01 00:00:02    3
2013-01-01 00:00:03    4
2013-01-01 00:00:04    5
Freq: S, dtype: int64
>>> r = s.resample('2s')
>>> r.agg(np.sum)
2013-01-01 00:00:00    3
2013-01-01 00:00:02    7
2013-01-01 00:00:04    5
Freq: 2S, dtype: int64
>>> r.agg(['sum', 'mean', 'max'])
                     sum  mean  max
2013-01-01 00:00:00    3   1.5    2
2013-01-01 00:00:02    7   3.5    4
2013-01-01 00:00:04    5   5.0    5
>>> r.agg({'result': lambda x: x.mean() / x.std(),
...        'total': np.sum})
                       result  total
2013-01-01 00:00:00  2.121320      3
2013-01-01 00:00:02  4.949747      7
2013-01-01 00:00:04       NaN      5
>>> r.agg(average="mean", total="sum")
                         average  total
2013-01-01 00:00:00      1.5      3
2013-01-01 00:00:02      3.5      7
2013-01-01 00:00:04      5.0      5

© 2008–2022, 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/1.5.0/reference/api/pandas.core.resample.Resampler.aggregate.html

Spec-Zone.ru

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