Дана таблица продаж df с колонками: region (регион), manager (менеджер), amount (сумма сделки, ₽), deals (число сделок в записи). Для каждого региона посчитай несколько показателей одним вызовом groupby().agg() через named aggregation. Верни DataFrame, где region — обычная колонка (не индекс), со следующими колонками ровно с такими именами: total_amount — сумма amount, avg_amount — среднее amount, deals_sum — сумма deals, managers — число уникальных менеджеров (nunique), max_amount — максимум amount. Отсортируй строки по total_amount по убыванию и сбрось индекс. Реализуй f(df).
pandas groupby named-aggregation agg nunique
Задача «Сводка продаж по регионам (named aggregation)» учит обрабатывать табличные данные в pandas: фильтрация, группировка, объединение и метрики. Такие задачи дают на собеседованиях в Ozon и других IT-компаниях. Уровень лёгкий — база, которую ждут от любого аналитика на Python.
Сначала разбери условие и формат входа-выхода, прикинь крайние случаи (пустой ввод, дубли, NaN). Затем выбери структуру данных и собери решение по шагам — начни с простого рабочего варианта, потом оптимизируй сложность. Код пишешь и запускаешь прямо в браузере: Python-тренажёр исполняет его через Pyodide (pandas, numpy, scipy) и проверяет результат автоматически.
В pandas один и тот же результат часто достаётся разными путями — через groupby, pivot_table, merge или векторные операции над колонками. Важно выбрать читаемый и быстрый: встроенные векторные методы почти всегда обгоняют циклы и построчный apply. На собеседовании ценят не только правильный ответ, но и то, как ты объясняешь выбор подхода, обрабатываешь пропуски (NaN) и оцениваешь, что будет на больших данных.
Разобраться в pandas системно — бесплатный курс «Pandas с нуля» и гайды по pandas.
Открыть задачу в тренажёре → ← Все Python-задачи