2群の平均値を比較したところ、p値が0.04だったので差があり、0.06なら差がない、と結論を分けたくなる場面がありますが、この読み方では検定の仮定が抜けてしまっています。p値が答えるのは「帰無仮説が正しいか」ではなく、帰無仮説と統計モデル、解析手順を仮定したときに、観測結果以上に極端な結果がどの程度生じるかです。帰無仮説を理解すると、有意差の有無だけで結論を急がず、効果の大きさと不確実性を評価でき、論文の結果欄に並ぶ推定値、95%信頼区間、p値の役割も見通しやすくなります。
この記事では、帰無仮説が母集団について置く仮定であることを説明し、棄却できた場合とできなかった場合の言える範囲を区別できるようになることを目指しています。平均差を扱うWelchの2標本t検定を例に、10,000回のシミュレーションで、帰無仮説のもとでも小さなp値が生じる様子を確かめます。
帰無仮説は比較の基準を定める
降圧薬の介入群と対照群で、一定期間後の収縮期血圧の平均値を比較する研究を考えます。前提として、標本で得た平均差が0ではないこと自体は、母集団の平均差が0でない根拠にはなりません。同じ母集団から標本を取り直せば、標本平均は偶然に動くからです。
そこで、検定では母集団について具体的な基準を置きました。介入群の母平均を$\mu_I$、対照群の母平均を$\mu_C$とすると、平均差を調べる帰無仮説は次のように書けます。
$$H_0:\mu_I-\mu_C=0 \tag{1}$$
式(1)は、母集団での平均差を0と仮定する、という意味です。標本で観察した2群の値が全て同じ、治療効果が医学的に全くない、という仮定ではありません。
そして、この区別は研究目的によって変わります。優越性を調べる検定なら差が0を基準にすることが多い一方、別の研究目的では、検定すべき基準値そのものが変わります。したがって、帰無仮説は「とりあえず差がないと置く決まり」ではなく、研究目的に対応して反証を試みる統計的な主張です。
p値は仮説の確率ではない
帰無仮説のもとで、今回の標本から得た検定統計量を$t_{obs}$、同じ条件で標本を繰り返し得たときの検定統計量を$T$とします。両側検定のp値は、概念的には次の条件付き確率です。
$$p=\Pr\left(|T|\geq|t_{obs}|\mid H_0,\mathcal{M},\mathcal{A}\right) \tag{2}$$
式(2)は、帰無仮説$H_0$、統計モデル$\mathcal{M}$、解析手順$\mathcal{A}$を仮定したとき、観測値以上に極端な検定統計量が出る確率を表します。
WassersteinとLazar(2016)は、p値が仮説の真である確率や、データが偶然だけで生じた確率を測るものではないと説明しています。また、Greenlandら(2016)が強調するように、p値の計算は帰無仮説だけでなく、標本の独立性や分布など、用いたモデル全体に依存します。小さなp値は、この一式の仮定と観測結果の不整合を示しますが、その原因を帰無仮説だけに特定する値ではありません。
棄却は反証の基準に沿った判断
有意水準を0.05と事前に定め、p値がそれを下回った場合、帰無仮説を棄却します。NeymanとPearson(1933)の枠組みでは、この判断規則を繰り返し用いたときの誤り率が中心になります。帰無仮説が真で、モデルの仮定も満たされているのに棄却する第1種の誤りを、長期的に5%に抑えるという設計です。
ただし、1回の研究でp=0.04だったとき、その結論が誤っている確率を4%と読んではいけません。p値は観測データを条件にした仮説の確率ではなく、判断規則の長期的な性質と、今回のデータの仮定下での極端さは別の概念です。Goodman(2008)は、この取り違えを代表的なp値の誤解として整理しています。
私は解析結果を読む際、棄却という語を「帰無仮説が誤りだと証明した」へ置き換えません。モデルの前提と事前に定めた判断基準のもとで、観測結果が帰無仮説と整合しにくかった、と受け取る方が統計的に正確だからです。
非棄却は差がない証明にならない
p値が0.05以上なら「差がない」と考えてしまいがちですが、この結論も正確ではありません。標本が小さい、ばらつきが大きい、真の差が小さい、といった状況では、差が存在しても帰無仮説を棄却できないことが多々あります。AltmanとBland(1995)が述べるように、差を示す根拠が得られなかったことと、差が存在しない根拠が得られたことには区別が必要です。
そのため、非棄却は「今回のデータと解析では、設定した基準で帰無仮説との不整合を十分に捉えられなかった」と読みます。真の差がちょうど0だと受容したり、2群が同等だと証明したりする判断ではありません。同等性を主張したい研究では、許容できる差を事前に定め、それに対応する解析が必要になりますが、その手法に関してはまた別の記事で言及させていただきます。
平均差と信頼区間を一緒に読む
ランダムに生成した代表的なデータセットでは、各群50例、真の平均差を介入群−対照群で+0.5、各群の標準偏差を1としました。そして、Welchの2標本t検定による推定平均差は0.505、95%信頼区間は0.112〜0.898、p値は0.0124でした。ここでp値だけを報告すると、差の向きと大きさ、推定の不確実性が抜け落ちます。
Markら(2016)は、医学研究における結果の解釈では、p値とともに効果の大きさと精度を見る必要があると論じています。この例でも、統計的な判断は帰無仮説を棄却ですが、平均差0.505が医学的に意味のある大きさかどうかは、アウトカムの尺度と事前に定めた臨床的な基準がなければ決まりません。
そして、有意か否かだけで結果を二分する報告は適切ではありません。研究で知りたいのは、多くの場合、効果が0かどうかだけではなく、どの向きにどの程度あり、どれほど不確実かだからです。
10,000回の標本で誤り率を見る
各群50例、標準偏差1の正規分布から10,000組のデータセットをランダムに生成しました。真の平均差が0の条件と+0.5の条件に、両側Welchの2標本t検定を同じ手順で適用しています。使用するのはbase Rとstatsパッケージです。
set.seed(42)
n_simulations <- 10000L
n_per_group <- 50L
control <- matrix(rnorm(n_simulations * n_per_group), nrow = n_simulations)
intervention_error <- matrix(rnorm(n_simulations * n_per_group), nrow = n_simulations)
p_value <- function(row_id, true_difference) {
t.test(intervention_error[row_id, ] + true_difference,
control[row_id, ], var.equal = FALSE)$p.value
}
null_p <- vapply(seq_len(n_simulations), p_value, numeric(1), true_difference = 0)
alternative_p <- vapply(seq_len(n_simulations), p_value, numeric(1), true_difference = 0.5)
c(null = mean(null_p < 0.05), alternative = mean(alternative_p < 0.05))
#> null alternative
#> 0.0507 0.6956
representative <- t.test(intervention_error[1, ] + 0.5, control[1, ],
var.equal = FALSE)
c(mean_difference = unname(representative$estimate[1] - representative$estimate[2]),
lower = representative$conf.int[1], upper = representative$conf.int[2],
p_value = representative$p.value)
estimated_difference <- rowMeans(intervention_error + 0.5) - rowMeans(control)
c(all = mean(estimated_difference),
significant = mean(estimated_difference[alternative_p < 0.05]),
excess = mean(estimated_difference[alternative_p < 0.05]) - 0.5)
#> mean_difference lower upper p_value
#> 0.5047788 0.1118410 0.8977165 0.0123514
#> all significant excess
#> 0.5012283 0.6016373 0.1016373
真の平均差が0の条件では、10,000回中507回、割合にして0.0507でp値が0.05未満でした。これは、帰無仮説のもとでも、事前に定めた有意水準に相当する割合で棄却が起きることを表しています。個々の小さなp値を見ただけでは、それが第1種の誤りに当たる研究なのかは判別できません。
一方、真の平均差を+0.5にすると、棄却率は0.6956へ上がりました。この数値は今回置いた各群50例、標準偏差1、真の差+0.5という条件での結果です。
png("null-hypothesis-p-values.png", width = 1100, height = 688,
res = 200, type = "cairo")
par(mfrow = c(1, 2), mar = c(4.2, 4.2, 2.5, 1))
hist(null_p, breaks = 20, freq = FALSE, xlim = c(0, 1), col = "#9ecae1",
border = "white", xlab = "P value", ylab = "Density", main = "Null difference = 0")
abline(v = 0.05, col = "#b2182b", lwd = 2, lty = 2)
hist(alternative_p, breaks = 20, freq = FALSE, xlim = c(0, 1), col = "#fdae6b",
border = "white", xlab = "P value", ylab = "Density", main = "True difference = 0.5")
abline(v = 0.05, col = "#b2182b", lwd = 2, lty = 2)
dev.off()

有意な結果だけでは効果を大きく読む
同じ10,000回のうち、真の平均差を+0.5にした全データセットで推定平均差を平均すると0.501でした。ところが、p値が0.05未満だった6,956回だけを選ぶと、推定平均差の平均は0.602となり、置いた真値より0.102大きくなりました。
このズレは、p値が効果量ではないことを提示しており、有意な結果だけを選ぶと、偶然に大きく推定された標本が残りやすくなります。したがって、p値が小さいほど効果が大きいと順位付けしたり、有意だった研究の推定値だけを額面どおり受け取ったりする読み方は避けるべきです。
実務上は、帰無仮説の設定と検定結果に加え、推定値、95%信頼区間、研究計画、解析モデルの前提を同じ結果欄で確認します。検定が返す0か1かの判断より、推定された効果と不確実性の方が、次の研究や意思決定に残る情報は多くなります。
帰無仮説を結果の文脈へ戻す
帰無仮説は、検定が反証を試みる母集団についての仮定です。p値を読むときは、何を0と置いたのか、どのモデルと解析手順を仮定したのかを結果へ戻して考えます。棄却できなければ差がないと断定せず、棄却できても効果の大きさをp値から推測しません。
研究結果として残すべきなのは、帰無仮説に対する判断だけではありません。平均差の向きと大きさ、95%信頼区間、データとモデルの前提を併記して初めて、読者は統計的な不整合と医学的な意味を分けて判断できます。
参考文献
- Neyman J, Pearson ES. On the problem of the most efficient tests of statistical hypotheses. Philosophical Transactions of the Royal Society of London. Series A, Containing Papers of a Mathematical or Physical Character. 1933;231:289-337.
- Wasserstein RL, Lazar NA. The ASA’s statement on p-values: context, process, and purpose. The American Statistician. 2016;70(2):129-133.
- Greenland S, Senn SJ, Rothman KJ, Carlin JB, Poole C, Goodman SN, Altman DG. Statistical tests, P values, confidence intervals, and power: a guide to misinterpretations. European Journal of Epidemiology. 2016;31(4):337-350.
- Goodman SN. A dirty dozen: twelve p-value misconceptions. Seminars in Hematology. 2008;45(3):135-140.
- Mark DB, Lee KL, Harrell FE Jr. Understanding the role of P values and hypothesis tests in clinical research. JAMA Cardiology. 2016;1(9):1048-1054.
- Altman DG, Bland JM. Absence of evidence is not evidence of absence. BMJ. 1995;311(7003):485.


