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

Метод diff

Метод diff применяется к объекту GroupBy и вычисляет разность между текущим значением и предыдущим значением внутри каждой группы. Первым параметром можно передать количество периодов для сдвига (по умолчанию 1). Метод возвращает объект того же типа, что и исходный.

Синтаксис

groupby_obj.diff([periods])

Пример

Давайте вычислим разности между элементами внутри групп:

import pandas as pd df = pd.DataFrame({ 'group': ['A', 'A', 'B', 'B', 'B'], 'a': [1, 3, 5, 2, 4] }) grouped = df.groupby('group') res = grouped['a'].diff() print(res)

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

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

Пример

Давайте зададим период для вычисления разности:

import pandas as pd df = pd.DataFrame({ 'group': ['A', 'A', 'A', 'B', 'B'], 'a': [10, 20, 30, 5, 15] }) grouped = df.groupby('group') res = grouped['a'].diff(periods=2) print(res)

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

0 NaN 1 NaN 2 20.0 3 NaN 4 10.0 dtype: float64

Пример

Давайте применим метод diff ко всей таблице внутри групп:

import pandas as pd df = pd.DataFrame({ 'group': ['X', 'X', 'Y', 'Y'], 'a': [1, 2, 5, 7], 'b': [10, 20, 30, 40] }) grouped = df.groupby('group') res = grouped.diff() print(res)

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

a b 0 NaN NaN 1 1.0 10.0 2 NaN NaN 3 2.0 10.0

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

  • метод cumsum,
    который вычисляет кумулятивную сумму внутри групп
  • метод rank,
    который вычисляет ранги элементов внутри групп
  • метод head,
    который возвращает первые элементы каждой группы
  • метод tail,
    который возвращает последние элементы каждой группы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить