Net Revenue с возвратами и promo-скидками
// Условие
Таблица df — заказы маркетплейса за первое полугодие 2024. Каждый заказ имеет статус и возможную promo-скидку.
Что нужно
Посчитай net revenue per month по следующим правилам:
- Учитывай только заказы со
status∈ {completed,refunded}. Статусcancelled— игнорируй. - Для
completed:effective = amount − promo_discount; - Для
refunded:effective = −(amount − promo_discount)(возврат денег, минус уже выданная скидка).
Сгруппировать по месяцу order_date и посчитать сумму. Вернуть DataFrame result с колонками month (строка 2024-01), gross_amount (sum amount по completed+refunded, float, round 2), net_revenue (sum effective, float, round 2). Сортировка по month asc. Ровно 6 строк (Jan–Jun).
// Данные
df:
order_id, user_id, order_date (datetime), amount (float), status (completed/refunded/cancelled), promo_discount (float, 0 если скидки нет)// Решение
🔒
Решение, подсказки и автопроверка этой задачи — по подписке Premium. Вместе с ней открываются все премиум-задачи трёх тренажёров: SQL, pandas и A/B.
★ Открыть Premium