РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
603 of 687 menu

Метод agg аксессора rolling

Метод agg аксессора rolling применяется к объекту Rolling и возвращает агрегированные значения по скользящему окну. Первым параметром можно передать одну функцию, список функций или словарь с указанием столбцов и функций. Если передаётся несколько функций, результат будет содержать многоуровневые столбцы.

Синтаксис

rolling_object.agg(func)

Пример

Давайте создадим таблицу и применим агрегацию суммы к скользящему окну:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) res = df['a'].rolling(window=3).agg('sum') print(res)

Результат выполнения кода:

0 NaN 1 NaN 2 6.0 3 9.0 4 12.0 dtype: float64

Пример

Передадим список из нескольких функций для агрегации:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) res = df.rolling(window=3).agg(['sum', 'mean']) print(res)

Результат выполнения кода:

a b sum mean sum mean 0 NaN NaN NaN NaN 1 NaN NaN NaN NaN 2 6.0 2.0 60.0 20.0 3 9.0 3.0 90.0 30.0 4 12.0 4.0 120.0 40.0

Пример

Используем словарь для применения разных функций к разным столбцам:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) res = df.rolling(window=3).agg({ 'a': 'sum', 'b': 'mean' }) print(res)

Результат выполнения кода:

a b 0 NaN NaN 1 NaN NaN 2 6.0 20.0 3 9.0 30.0 4 12.0 40.0

Пример

Применим пользовательскую функцию для агрегации:

import pandas as pd import numpy as np df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5], 'b': [10, 20, 30, 40, 50] }) def custom_range(x): return np.max(x) - np.min(x) res = df['a'].rolling(window=3).agg(custom_range) print(res)

Результат выполнения кода:

0 NaN 1 NaN 2 2.0 3 2.0 4 2.0 dtype: float64

Смотрите также

  • метод apply,
    который применяет произвольную функцию к скользящему окну
  • метод mean,
    который вычисляет среднее значение в скользящем окне
  • метод sum,
    который вычисляет сумму значений в скользящем окне
  • метод count,
    который подсчитывает количество значений в скользящем окне
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить