pandas.core.resample.Resampler.apply
-
Resampler.apply(self, func, *args, **kwargs)[source] -
Агрегирование с использованием одной или нескольких операций над указанной осью.
Параметры: -
func : function, str, list or dict -
Функция для агрегирования данных. Если это функция, она должна работать, когда ей передаётся 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 -
DataFrame.aggregate
Примечания
aggявляется псевдонимом дляaggregate. Используйте псевдоним.Переданная пользователем функция будет передаваться Series для оценки.
Примеры
>>> s = pd.Series([1,2,3,4,5], index=pd.date_range('20130101', periods=5,freq='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') DatetimeIndexResampler [freq=<2 * Seconds>, axis=0, closed=left, label=left, convention=start, base=0]>>> 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}) total result 2013-01-01 00:00:00 3 2.121320 2013-01-01 00:00:02 7 4.949747 2013-01-01 00:00:04 5 NaN -
© 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.25.0/reference/api/pandas.core.resample.Resampler.apply.html