pandasA/B-тестHardPremium~10 мин

Mann-Whitney когда t-test не годится

// Условие

Heavy-tailed данные — типичная ловушка A/B-теста. Несколько экстремальных выбросов в одной группе раздувают среднее и дают t-test ложно-значимый результат. Mann-Whitney U работает на рангах и устойчив к выбросам.

Что нужно
Посчитай оба теста на различие распределений duration_sec между группами A и B:
  • mean_a, mean_b, median_a, median_b — среднее и медиана по группам (round 4);
  • t_pvalue — p-value от stats.ttest_ind(a, b) (round 4);
  • u_pvalue — p-value от stats.mannwhitneyu(a, b, alternative='two-sided') (round 4);
  • recommended_test — строка 'mannwhitney' если |t_pvalue − u_pvalue| > 0.03, иначе 't_test'.
Вернуть dict с ключами: mean_a, mean_b, median_a, median_b, t_pvalue, u_pvalue, recommended_test.

// Данные

df: user_id, group ('A'/'B'), duration_sec (float)
▶ Решить в pandas-тренажёре

// Решение

🔒

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

★ Открыть Premium

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

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

→ Гайд по A/B-тестам