pandas.DataFrame.agg
- DataFrame.agg(func=None, axis=0, *args, **kwargs)[source]
-
Агрегирование с использованием одной или нескольких операций по указанной оси.
- Параметры
-
- func:функция, строка, список или словарь
-
Функция для агрегирования данных. Если это функция, она должна работать, когда ей передается DataFrame или когда она передается в DataFrame.apply.
Допустимые комбинации:
функция
имя функции в виде строки
список функций и/или имен функций, например
[np.sum, 'mean']словарь меток осей -> функции, имена функций или списки таких.
- axis:{0 или ‘индекс’, 1 или ‘колонки’}, по умолчанию 0
-
Если 0 или ‘индекс’: применяет функцию к каждой колонке. Если 1 или ‘колонки’: применяет функцию к каждой строке.
- *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.agg.html