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

Метод groupby

Метод groupby применяется к Series и группирует её элементы на основе переданного ключа. Первым параметром передаётся ключ группировки - это может быть другая Series, массив, словарь или функция. В результате возвращается объект SeriesGroupBy, к которому можно применить агрегирующие методы, такие как sum, mean, count и другие.

Синтаксис

ser.groupby(by[, axis, level, as_index, sort, group_keys, squeeze, observed, dropna])

Пример

Сгруппируем серию по значениям другой серии и вычислим сумму в каждой группе:

import pandas as pd ser = pd.Series([1, 2, 3, 4, 5]) groups = pd.Series(['a', 'b', 'a', 'b', 'a']) res = ser.groupby(groups).sum() print(res)

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

a 9 b 6 dtype: int64

Пример

Используем функцию в качестве ключа группировки. Сгруппируем элементы по их чётности и вычислим среднее значение:

import pandas as pd ser = pd.Series([10, 20, 30, 40, 50]) res = ser.groupby(lambda x: 'even' if x % 2 == 0 else 'odd').mean() print(res)

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

even 30.0 odd NaN dtype: float64

Пример

Сгруппируем серию по списку ключей и применим несколько агрегаций одновременно:

import pandas as pd ser = pd.Series([1, 2, 3, 4, 5]) keys = ['x', 'y', 'x', 'y', 'x'] res = ser.groupby(keys).agg(['sum', 'mean', 'count']) print(res)

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

sum mean count x 9 3.0 3 y 6 3.0 2

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

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