「95% の信頼」が実際に意味すること
信頼区間は点推定値(「標本平均は 5.61」)を誠実な範囲(「真の平均はおそらく 5.29 から 5.93 の間」)に変えます。しかし 95% の信頼 という表現は統計学で最も誤読されるもののひとつなので、まず最初に正しく押さえておきましょう。
95% は 区間ではなく手続き を表します。研究を何度も何度も繰り返す様子を想像してください。毎回新しい標本、毎回新しい区間です。区間はあちこちに飛び、そのおよそ 95% が真の値を捉え、5% は外します。あなたの実際の 1 つの区間は、その過程からの 1 回の抽出です。95% が意味 しない のは、「真の平均がこの数値の間にある確率が 95%」ということです。真の平均は固定された(未知の)数値であり、区間に出たり入ったりしているわけではありません。変動するのは 区間 の方です。
実務上は、区間はデータと矛盾しない値の範囲だという親しみやすい読み方で構いません。ただ、誰かに詰め寄られたときに自分がどの主張をする資格があるのかは知っておきましょう。
平均の信頼区間、簡単な方法
どの t.test() も信頼区間を携えています。それを収穫するためだけに検定を実行しても構いません。
平均は 5.61、95% 信頼区間はおよそ 5.29 から 5.93 です。この区間は、平均値だけではできない仕事をします。10 個の観測値が実際にどれだけの精度をもたらすのかを示すのです。
同じ区間を手計算で
その区間の背後にある式は一度組み立ててみる価値があります。今後読むあらゆる信頼区間の神秘性を解いてくれるからです。推定値 ± 臨界値 × 標準誤差 です。
t.test() の出力と突き合わせてみてください。最後の桁まで同じ区間になります。可動部分は 3 つです。
- 標準誤差
sd(x)/sqrt(n)は標本平均がどれだけ揺らぐかを測ります(sd と SE の区別については記述統計を参照してください)。 qt(0.975, df)は t の臨界値です。95% の被覆率のためには両側にそれぞれ 2.5% を残すので 0.975 になります。df = 9 では約 2.26 で、正規分布の 1.96 より太くなっています。同じデータから sd を推定することへの、小標本の税金です。- 誤差の範囲 はこれらの積です。見出しに引用される「±」の数値がこれです。
信頼水準を変える: 90%、99%、そしてトレードオフ
conf.level が被覆率を制御し、それに伴って幅も変わります。
信頼を高めるほど幅という代償が増えます。99% の区間は 100 回中 99 回正しくあるだけの幅が必要なので伸びます。90% の区間はより締まっていますが、95% の 2 倍の頻度で外します。ただ飯はなく、あるのはつまみだけです。95% は純然たる慣習であり、理由がない限り維持する価値のある既定値であって、自然法則ではありません。
比率の信頼区間: prop.test()
調査した 120 人のユーザーのうち 47 人が新機能を採用したとしましょう。真の採用率としてありうる範囲はどこでしょうか。
標本比率は 0.39、95% 信頼区間はおよそ 0.30 から 0.49 です。つまり「採用率は約 40%」と言えるのは、±9 ポイントの後光を付けたときだけです。prop.test() は教科書的な p ± 1.96 × sqrt(p(1−p)/n) の式よりも良い近似(連続性の補正を伴う Wilson 型の区間)を使います。これは 0 や 1 の近くで最も効いてきます。教科書の区間は [0, 1] の外にはみ出すことがありますが、こちらははみ出しません。件数が非常に少ない場合は、binom.test(47, 120)$conf.int が厳密版を返します。
モデル係数の信頼区間: confint()
当てはめたモデルには、1 つの総称関数を通じて区間が得られます。
各行が線形回帰の 1 つの係数を挟み込みます。wt の傾きの 95% 区間は、1000 ポンドあたり約 −6.5 から −4.2 mpg です。これは summary の p 値より情報量が多く、効果が単にゼロでないだけでなく、少なくとも 約 4 mpg あり、6.5 程度かもしれないと述べています。
ロジスティックな glm() では、confint(fit) は同じように動きますが対数オッズの境界を返します。指数変換すればオッズ比の区間になり — exp(confint(fit)) — 「効果なし」の基準値は 0 ではなく 1 になることを覚えておきましょう。
標本サイズ: 平方根の法則
幅は sqrt(n) に応じて縮み、記憶に残る帰結をもたらします。データを 4 倍にすると、区間は半分になります。 シミュレーションデータでその様子を見てみましょう。同じ分布から、一方の標本を 4 倍のサイズにします(シードを設定すると再現可能になります。乱数を参照してください)。
幅の比はおよそ 2:1 に落ち着きます(標本抽出のノイズがあるため厳密にはなりません)。この平方根こそ、精度が高くつく理由です。最初の 100 観測は、次の 300 観測を合わせたよりも大きな幅の縮小をもたらしますし、すでに狭い区間をさらに半分にするには、それまで払った分の常に 4 倍がかかります。
信頼区間と p 値: ひとつの検定の 2 つの見方
信頼区間と仮説検定は、同じ情報を別の衣装で見せたものです。95% 信頼区間には、0.05 水準の両側検定が棄却 しない パラメータ値がちょうど含まれます。つまり、
- 平均の差の信頼区間が 0 を含まない ⇔ t 検定は p < 0.05 と言う。
- オッズ比の信頼区間が 1 を含まない ⇔ その係数の p < 0.05。
区間が手元にあるなら、たいていそちらが優れた要約です。同じ有意性の判断 に加えて、効果の大きさを実際の単位で伝えてくれるからです。「p = 0.03」は差が存在すると言い、「95% 信頼区間: 0.2 から 7.6」は差が存在し、それが取るに足らないかもしれないし、巨大かもしれないと言います。多くの場合、重要なのは後者の知見です。
この章のまとめ
- 95% は手続きの長期的な的中率を表すのであって、このひとつの区間が真実を捉えた確率ではありません。
- 平均:
t.test(x)$conf.int、または手計算で 平均 ±qt(0.975, n−1)× SE。 - 比率:
prop.test(x, n)$conf.int、モデル係数:confint(fit)(glm のオッズ比には指数変換を)。 - 信頼水準が高いほど区間は広くなります。95% は慣習であって法律ではありません。
- 幅は sqrt(n) に応じて縮みます。データが 4 倍になると区間は半分です。
- 信頼区間には 0.05 水準の検定が棄却しないすべての値が含まれ、p 値と違って効果の大きさを示します。
次は、これらすべての裏にあるシミュレーションの道具立て — rnorm、runif、sample、set.seed による乱数です。
よくある質問
R で 95% 信頼区間を計算するにはどうしますか?
平均なら最も手早い経路は t.test(x)$conf.int です。比率なら prop.test(successes, trials)$conf.int。当てはめた lm() や glm() モデルの係数なら confint(fit) です。3 つとも既定は 95% で、conf.level = 0.90(または 0.99)で変更できます。
95% 信頼区間は実際には何を意味しますか?
それは 手続き についての言明です。研究を何度も繰り返し、そのたびに区間を作ったとすると、それらの区間のおよそ 95% が真の値を含みます。「このひとつの区間の中にパラメータがある確率が 95%」という意味ではありません。パラメータは固定された数値であり、個々の区間はそれを捉えたか捉えなかったかのどちらかです。
R で信頼区間を手計算するにはどうしますか?
平均 ± 臨界値 × 標準誤差です。平均の場合: m <- mean(x); se <- sd(x)/sqrt(length(x)); m + c(-1, 1) * qt(0.975, df = length(x) - 1) * se。qt(0.975, df) は、両側にそれぞれ 2.5% を残す t の臨界値です。
標本サイズは信頼区間にどう影響しますか?
幅は n の平方根に応じて縮みます。標本を 4 倍にすると区間は半分になります。この平方根こそ、最後のわずかな精度が高くつく理由です。±2 から ±1 にするには、2 倍ではなく 4 倍のデータが必要です。