Spec-Zone.ru › pandas 2

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

Spec-Zone.ru

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