← Все уроки

Pandas с нуля. Часть 8: группировки — groupby, agg, pivot_table

Разбираем groupby в pandas по-человечески: механика split-apply-combine, agg и named aggregation, transform vs agg, filter, apply на группу, pivot_table и cross

Урок курса «Pandas с нуля» — открой бесплатной регистрацией
Ниже — план урока. Зарегистрируйся за 30 секунд, чтобы открыть полную теорию и 4 задачи с автопроверкой прямо в браузере (Python и pandas прямо в браузере), сохранять прогресс и пройти все 10 частей бесплатно.
groupby — split, apply, combine: строки раскладываются по группам, в каждой считается агрегат, результат собирается в таблицу

Это часть 8 из 10 курса «Pandas с нуля для аналитика».

Если ты умеешь группировать данные — ты умеешь отвечать на 80% вопросов бизнеса. «Сколько мы заработали по каждому городу?», «Кто наш топ-продавец?», «Какая доля выручки идёт из мобилки?» — всё это groupby. Это самый рабочий инструмент аналитика после фильтрации, и сегодня мы разберём его так, чтобы ты не путался между agg, transform и apply никогда.

Что разберёшь в этом уроке

Частые вопросы

Как сгруппировать данные и посчитать агрегаты в pandas?

Используйте groupby с агрегирующей функцией: df.groupby('city')['sales'].sum() или .mean(), .count(). Для нескольких метрик сразу применяют agg: df.groupby('city')['sales'].agg(['sum','mean','count']).

Чем pivot_table отличается от groupby?

groupby агрегирует в длинном формате (одна колонка с группами), а pivot_table раскладывает агрегаты в матрицу: строки по index, колонки по columns, значения по values с функцией aggfunc. pivot_table удобнее для кросс-таблиц вида город × месяц.

Как применить разные функции агрегации к разным колонкам?

Передайте в agg словарь: df.groupby('city').agg({'sales':'sum', 'orders':'count', 'price':'mean'}). Для именованных колонок используйте named aggregation: agg(total=('sales','sum'), avg=('price','mean')).

Free — после регистрации
0 ₽
  • Все 10 уроков курса + 36 интерактивных задач
  • 5 SQL и 5 Python-задач в тренажёре
  • 5 кейсов · 10 метрик · 1 AI-собеседование
Начать бесплатно →
Pro
1 999 ₽/мес
  • Все 545 SQL + 538 Python-задач
  • 610 кейсов · 394 метрик · 664 заданий
  • Безлимит AI-собеседований с разбором
Оформить Pro →