pandas.DataFrame.agg
- DataFrame.agg(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 вызывается с несколькими функциями
См. также
DataFrame.apply-
Выполнение операций любого типа.
DataFrame.transform-
Выполнение преобразований.
pandas.DataFrame.groupby-
Выполнение операций над группами.
pandas.DataFrame.resample-
Выполнение операций над пересэмплированными интервалами.
pandas.DataFrame.rolling-
Выполнение операций над скользящим окном.
pandas.DataFrame.expanding-
Выполнение операций над расширяющимся окном.
pandas.core.window.ewm.ExponentialMovingWindow-
Выполнение операций над экспоненциально взвешенным окном.
Примечания
Операции агрегирования всегда выполняются по оси, либо по индексу (по умолчанию), либо по оси столбцов. Это поведение отличается от функций агрегирования numpy (mean, median, prod, sum, std, var), где по умолчанию вычисляется агрегирование уплощенного массива, например,
numpy.mean(arr_2d)в отличие отnumpy.mean(arr_2d, axis=0).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', '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/2.2.2/reference/api/pandas.DataFrame.agg.html