pandas.DataFrame.aggregate
- DataFrame.aggregate(func=None, axis=0, *args, **kwargs)[source]
-
Агрегирование с использованием одной или нескольких операций по указанной оси.
- Параметры
-
- func:функция, строка, список или словарь
-
Функция для агрегирования данных. Если это функция, она должна работать, когда ей передаётся DataFrame или когда она передаётся в DataFrame.apply.
Допустимые комбинации:
функция
имя функции в виде строки
список функций и/или имён функций, например
[np.sum, 'mean']словарь меток оси -> функций, имён функций или списков таких.
- axis:{0 или ‘index’, 1 или ‘columns’}, по умолчанию 0
-
Если 0 или ‘index’: применяет функцию к каждому столбцу. Если 1 или ‘columns’: применяет функцию к каждой строке.
- *args
-
Позиционные аргументы для передачи функции func.
- **kwargs
-
Ключевые аргументы для передачи функции func.
- Возвращает
-
- скаляр, Series или DataFrame
-
Возвращаемое значение может быть:
скаляр: когда Series.agg вызывается с одной функцией
Series: когда DataFrame.agg вызывается с одной функцией
DataFrame: когда DataFrame.agg вызывается с несколькими функциями
Возвращает скаляр, Series или DataFrame.
- Операции агрегирования всегда выполняются по оси, либо по
- индексу (по умолчанию), либо по оси столбцов. Это поведение отличается
- от функций агрегирования numpy (mean, median, prod, sum, std,
- var), где по умолчанию вычисляется агрегирование сглаженного
- массива, например,
numpy.mean(arr_2d)по сравнению с -
numpy.mean(arr_2d, axis=0). - agg является псевдонимом для aggregate. Используйте псевдоним.
См. также
DataFrame.apply-
Выполнить любой тип операций.
DataFrame.transform-
Выполнить преобразования.
core.groupby.GroupBy-
Выполнить операции над группами.
core.resample.Resampler-
Выполнить операции над сгруппированными значениями.
core.window.Rolling-
Выполнить операции над скользящим окном.
core.window.Expanding-
Выполнить операции над расширяющимся окном.
core.window.ExponentialMovingWindow-
Выполнить операцию над экспоненциально взвешенным окном.
Примечания
agg является псевдонимом для aggregate. Используйте псевдоним.
Функции, изменяющие переданный объект, могут привести к неожиданному поведению или ошибкам и не поддерживаются. Дополнительные сведения см. в разделе Изменение с помощью пользовательских функций (UDF).
Переданная пользовательская функция будет передавать Series для оценки.
Примеры
>>> df = pd.DataFrame([[1, 2, 3], ... [4, 5, 6], ... [7, 8, 9], ... [np.nan, np.nan, np.nan]], ... columns=['A', 'B', 'C'])
Агрегирование этих функций по строкам.
>>> df.agg(['sum', 'min']) A B C sum 12.0 15.0 18.0 min 1.0 2.0 3.0Различные агрегации по столбцам.
>>> df.agg({'A' : ['sum', 'min'], 'B' : ['min', 'max']}) A B sum 12.0 NaN min 1.0 2.0 max NaN 8.0Агрегация различных функций по столбцам и переименование индекса результирующего DataFrame.
>>> df.agg(x=('A', max), y=('B', 'min'), z=('C', np.mean)) A B C x 7.0 NaN NaN y NaN 2.0 NaN z NaN NaN 6.0Агрегирование по столбцам.
>>> df.agg("mean", axis="columns") 0 2.0 1 5.0 2 8.0 3 NaN dtype: float64
© 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.DataFrame.aggregate.html