Короткий ответ
p-value — это вероятность получить результат такой же или более экстремальный, чем наблюдаемый, при условии, что верна нулевая гипотеза; это не вероятность того, что нулевая гипотеза верна, и не вероятность того, что эффект реален.
Как это работает подробнее
p-value считается относительно предполагаемого мира без эффекта (нулевая гипотеза); маленький p-value означает, что такой результат маловероятен в этом мире, и даёт основание усомниться в нулевой гипотезе. Такой расчёт обычно выполняется автоматически статистическими библиотеками, но важно понимать, что именно стоит за выведенным числом.
Пример кода
Пример на Python
from scipy import stats
control = [120, 118, 125, 130, 115, 122]
test = [128, 135, 140, 130, 133, 138]
t_stat, p_value = stats.ttest_ind(control, test)
print(p_value)Что использовать на практике
- На практике: принято сравнивать p-value с заранее выбранным порогом (альфа, часто 0.05); если p-value ниже порога, говорят о статистической значимости различия. Важно помнить, что порог — условность, а не граница между «правдой» и «ложью», и его стоит выбирать заранее, а не подгонять под результат. Полезно всегда указывать рядом с p-value и сам размер эффекта, и объём выборки, чтобы читатель мог оценить, не является ли значимость результатом просто большого n.
- Пример: Если p_value = 0.03, корректная формулировка: «если бы разницы между группами на самом деле не было, такое или более сильное различие наблюдалось бы лишь в 3% случаев» — а не «вероятность того, что эффекта нет, равна 3%».
Подводные камни
- Частые ошибки: интерпретировать p-value как «вероятность того, что гипотеза H0 верна» или «вероятность случайности результата» — это неверно; считать p=0.049 «значимым», а p=0.051 «незначимым» без учёта, что разница ничтожна; игнорировать размер эффекта, сосредотачиваясь только на p-value; запускать тест несколько раз и сообщать только тот p-value, который получился маленьким. Ещё одна распространённая ошибка — выбирать метрику или подвыборку после того, как увидели предварительный результат, подгоняя анализ под желаемый p-value.