pandasКейсыHardPremium~15 мин

Drop в conversion: фильтр-аномалии по сегментам

// Условие

Алерт: общая конверсия сайта упала примерно на 30% во второй половине периода. Продукт хочет знать: какой именно сегмент (channel × device) провалился?

Что нужно
Для каждой комбинации (channel, device) посчитай CR (conversions / sessions) в периодах 'before' и 'after'. Вычисли относительное падение. Найди самый пострадавший сегмент.

Верни result — dict с ключами:

{
  'worst_segment': ('channel', 'device'),  # tuple
  'cr_before':     <float>,
  'cr_after':      <float>,
  'drop_pct':      <float>,  # round 4, отрицательное
  'all_segments':  <DataFrame>,  # channel, device, cr_before, cr_after, drop_pct
                                  # отсортирован по drop_pct asc
}

// Данные

df: session_id, period ('before'/'after'), channel, device, converted (0/1)
▶ Решить в pandas-тренажёре

// Решение

🔒

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

★ Открыть Premium

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