A/B-тесты · ПродвинутоеПоправки на множественные сравнения

Поправка Бонферрони онлайн и ещё пять методов рядом: Холм, Хохберг, Шидак, Бенджамини–Хохберг и Бенджамини–Йекутиели. Вставьте список гипотез с p-value — калькулятор покажет скорректированные p, какие результаты остались значимыми, как получилось каждое число, и объяснит FWER и FDR простыми словами. Код Python и R.

Цифры остаются в браузере и никуда не отправляются

01Данные02Результат03По шагам04Ложные находки05Код06Примеры07Вопросы08Похожие
01

Данные

Название и p через точку с запятой или табуляцию — можно вставить два столбца из Excel. Строка из одного числа тоже подойдёт.

Метод
Уровень значимости α

Как Бонферрони, но по шагам — всегда не слабее. Хороший выбор по умолчанию для A/B/n.

02

Результат

Значимы 2 из 4.
После поправки Холма; без поправки «значимых» было бы 4 — разница и есть случайные находки, от которых защищает поправка.
Скорректированные p-value
Выбранный метод выделен; «значимо» — p с поправкой меньше α
ГипотезаpБонф.ХолмХохбергШидакBHBY
Кнопка0,0100,040 — значимо0,030 — значимо0,030 — значимо0,039 — значимо0,020 — значимо0,042 — значимо
Цвет0,0400,1600,0600,040 — значимо0,1510,040 — значимо0,083
Текст0,0300,1200,0600,040 — значимо0,1150,040 — значимо0,083
Цена0,0050,020 — значимо0,020 — значимо0,020 — значимо0,020 — значимо0,020 — значимо0,042 — значимо
03

По шагам

Холм: как получились числа

p по возрастанию умножаются на m, m − 1, …, 1 (m = 4); дальше берётся накопленный максимум сверху вниз — скорректированный p не может быть меньше, чем у предыдущей гипотезы.

#ГипотезаpМножительp × множительС поправкой
1Цена0,005× 4,0000,0200,020 · значимо
2Кнопка0,010× 3,0000,0300,030 · значимо
3Текст0,030× 2,0000,0600,060
4Цвет0,040× 1,0000,0400,060
04

Ложные находки

Шанс хотя бы одной ложной находки
Без поправки, α = 0,05: 1 − (1 − α)^m
4 гип. → 19 %15101520100 %0

У вас 4 гипотезы: без поправки хотя бы одна ложная «победа» найдётся с вероятностью 19 % (если проверки независимы).

FWER или FDR

FWER — вероятность хотя бы одной ложной находки. Контролируют Бонферрони, Холм, Хохберг, Шидак: подходит, когда цена любой ошибки высока — выкатка, медицина.

FDR — доля ложных среди всех найденных. Контролируют Бенджамини–Хохберг и –Йекутиели: для разведки по многим метрикам, где пара ложных находок допустима.

05

Проверить в Python / R

Проверить в Python / R
from statsmodels.stats.multitest import multipletests

p = [0.01, 0.04, 0.03, 0.005]
reject, p_adj, _, _ = multipletests(p, alpha=0.05, method="holm")
06

Примеры

07

Частые вопросы

Каждая проверка при α = 0,05 даёт 5 % шанса на ложную «победу». Если смотреть 10 метрик, хотя бы одна случайно окажется «значимой» с вероятностью 40 %, а при 20 метриках — 64 %. Поправка пересчитывает p-value так, чтобы общий шанс ошибки снова был около заявленного α. Без неё случайные находки выглядят как открытия и попадают в отчёт.

Обновлено