Привет! На связи Илья Ковалёв, старший аналитик данных в Dodo Brands и автор канала про аналитику кусочек пиццы 👋🏻
В аналитическом сообществе есть негласная иерархия: чем сложнее метод, тем умнее выглядит аналитик. Bootstrap, тест Манна-Уитни, CUPED, байесовские подходы — всё это звучит внушительно на собеседованиях и в статьях на Хабре.
Но на практике в 80% случаев достаточно обычного t-теста.
Что такое t-test и как он работает
T-test проверяет одну простую гипотезу: отличаются ли средние значения метрики в двух группах или нет. Формально он считает t-статистику:
t = (x̄₁ - x̄₂) / √(s₁²/n₁ + s₂²/n₂),
где x̄ — среднее в группе, s² — дисперсия, n — размер выборки.
Дальше по этой статистике считается p-value — вероятность получить такой же или более экстремальный результат при условии, что никакого эффекта нет.
Если p-value < 0.05, эффект считается статистически значимым.
Почему часто всё усложняют
Главный аргумент против t-теста звучит так: «Данные не распределены нормально, значит t-test некорректен». Но на самом деле это не так.
T-test опирается не на нормальность исходных данных, а на нормальность распределения выборочного среднего.
А оно, согласно центральной предельной теореме, стремится к нормальному при достаточно большой выборке — вне зависимости от того, как распределены сами данные.
На практике при выборке от 1000 наблюдений на группу это условие выполняется почти всегда. А в большинстве продуктовых A/B-тестов выборки именно такого размера или больше.
Однако не стоит пихать t-test во все возможные эксперименты. Иногда он может и не подойти.
Когда t-test действительно не подходит
T-test работает плохо в нескольких ситуациях:
➖ Очень маленькие выборки (до 30 наблюдений на группу). В этом случае ЦПТ ещё не работает в полную силу.
➖ Метрика с экстремальными выбросами — например, выручка, где один крупный платёж может сильно сдвинуть среднее. В таком случае имеет смысл либо сглаживать выбросы и перепроверять результаты тестом Манна-Уитни.
➖ Бинарные метрики с очень низкой конверсией — в этом случае лучше работает z-test для пропорций, хотя при больших выборках разница минимальна.
Во всех остальных случаях t-test справляется.
Зачем тогда все эти сложные методы?
Они решают конкретные задачи — и только их. CUPED снижает дисперсию и позволяет быстрее набрать нужную выборку. Bootstrap помогает строить доверительные интервалы для нестандартных метрик. Линеаризация помогает работать с Ratio-метриками.
Это полезные инструменты. Но они не отменяют t-test, а дополняют его в нестандартных случаях. Браться за них только потому, что «так серьёзнее» — это усложнение ради усложнения. А усложнение ради усложнения в аналитике стоит дорого: дольше согласование, сложнее объяснить бизнесу, выше риск ошибки в реализации.
Простой инструмент, применённый правильно, лучше сложного, применённого без понимания.
➡️ Записаться на курс по A/B-тестам: simulative.ru/ab-test
📈 Симулейтив | ВК | YouTube