pandasLTVHardPremium~13 мин

Net Revenue с возвратами и promo-скидками

// Условие

Таблица df — заказы маркетплейса за первое полугодие 2024. Каждый заказ имеет статус и возможную promo-скидку.

Что нужно
Посчитай net revenue per month по следующим правилам:
  1. Учитывай только заказы со status ∈ {completed, refunded}. Статус cancelled — игнорируй.
  2. Для completed: effective = amount − promo_discount;
  3. Для 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 если скидки нет)
▶ Решить в pandas-тренажёре

// Решение

🔒

Решение, подсказки и автопроверка этой задачи — по подписке Premium. Вместе с ней открываются все премиум-задачи трёх тренажёров: SQL, pandas и A/B.

★ Открыть Premium

// Похожие задачи

// Разобраться в теме

→ LTV: как считать