Spec-Zone.ru › pandas 2

pandas.DataFrame.aggregate

DataFrame.aggregate(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 с несколькими функциями

См. также

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.aggregate.html

Spec-Zone.ru

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