十の並列した脳

何でも勉強する,毎週月木曜に投稿予定

基礎統計学の勘どころ #9 仮説検定

前回↓

 

ryosuke-okubo.hatenablog.com

 

 

仮説検定では,母集団の特性についてあらかじめ決めた仮説が適合するかを調べる。手順は目次に示す通りである。

 

 

1.仮説を立てる

仮説検定では,まず帰無仮説対立仮説を立てる。

  • 帰無仮説H_0:否定したい仮説。
  • 対立仮説H_1:主張したい仮説。

ある仮説(対立仮説)を立証したい場合,それを否定する仮説(帰無仮説)を棄却することで,初めて立証される,という考え方をとる。

 

回りくどいようだが,「推定無罪」はこの考え方の典型である。

被告事件が罪とならないとき、又は被告事件について犯罪の証明がないときは、判決で無罪の言渡をしなければならない。(刑事訴訟法第336条)

逆にいうと,無罪でないことを立証して初めて有罪であると言える。例えば,アリバイが崩れると無罪の可能性が低くなる。

 

2.検定の方法,有意水準を設定する

ここで2種類の過誤について説明する。これは覚えること。

  • 第1種の過誤:本当は帰無仮説が正しいのに,帰無仮説を棄却すること,有意水準\alphaは第1種の過誤を犯す確率を示す
  • 第2種の過誤:本当は帰無仮説が誤っているのに,帰無仮説を棄却しないこと,検出力1 - \betaは第2種の過誤を犯さない確率を示す

この2種類の過誤はトレードオフの関係にあることも重要である。 

例:

裁判において推定無罪にしたがって,帰無仮説を無罪,対立仮説を有罪とする。このとき,本当は無罪なのに有罪と判決される,つまり冤罪となることが第1種の過誤,本当は有罪なのに無罪と判決される,つまり真犯人を取り逃がすことが第2種の過誤に相当する。冤罪を減らそうと有罪を減らすと,真犯人を取り逃がす可能性が高くなる,逆も同様である。

 

仮説検定においては,有意水準を固定して,検定力が大きいような方法を選ぶようにする(ネイマン・ピアソンの検定基準)。検定の方法は,対象のパラメータによってある程度決まっている。

  • 標本平均,平均の差:t検定
  • 等分散性:F検定
  • 適合度,独立性:\chi^2検定

などなど。ひとまず検定力については済んだ。

 

有意水準は0.05や0.01を取ることが多いが,暗黙の了解に近いもので特に根拠はない。例えば有意水準を0.05とすることは,「100回のうち5回も起こらないことは,偶然とはいえない」とみなすことになる。帰無仮説の棄却は,これだけアリバイが揃ってもう無罪とはいえない,といった状況とも言える。

有意水準検定を行う前に設定するべきである。というのも,有意水準と統計量(p値)とを見比べて判定するわけだが,有意水準をいじって結論を捻じ曲げることができてしまうからである。

 

3.棄却域を設定する

棄却域とは,帰無仮説が棄却される統計量の範囲である。一方で棄却されない領域を採択域という。

f:id:ryosuke_okubo:20190505100053p:plain

標準正規分布を仮定した両側検定,有意水準0.05における棄却域

 

4.統計量を計算する

例:

{\displaystyle z = \frac{\bar{x}-\mu}{\sqrt{\frac{\sigma^2}{n}}}} 

{\displaystyle t = \frac{\bar{x}-\mu}{\sqrt{\frac{s^2}{n}}}}

 

p値とは,帰無仮説のもとでその統計量をとる確率である。

 

5.仮説を棄却するか判定する

f:id:ryosuke_okubo:20190505100821p:plain

A,Bはそれぞれ統計量を示す

統計量が棄却域に含まれる,p値が有意水準より小さい(A)

帰無仮説は棄却できる,対立仮説を採択する。

 

統計量が棄却域に含まれない,p値が有意水準より小さくない(B)

帰無仮説は棄却できない

 

注意点として,「帰無仮説を採択する」という表現は取らないことが重要である。証拠が足りなかったからといって,有罪といえないだけで無罪を確定するものではないのと同じ理屈である。

 

問題を解いてみる

 

問題(再掲)

新薬Aの血圧低下作用を知るために,患者20人を無作為に2群に分け,10人には新薬Aを,もう10人にはプラセボを投与する。何週間か投与して,最低血圧を測定すると以下の値となった。

投与                     平均 分散
新薬A 98.0 98.5 100.2 103.0 98.5 107.8 80.2 81.5 90.6 91.2 94.95 80.38
プラセボ 105.2 91.8 102.9 108.5 113.2 91.5 92.6 95.9 103.4 104.6 100.96 57.39

 

新薬Aとプラセボの平均には6くらいの差がある。この結果から,薬剤Aは血圧低下作用がある,と結論づけてもいいのだろうか?

A.母平均の両側t検定

練習のため,あえて不自然な例を示す。

立証したいこと:新薬Aの平均値は120ではない

 

上の手順にならって仮説検定を行ってみる。

 

1.

  • 帰無仮説H_0:新薬Aの平均値は120である
  • 対立仮説H_1:新薬Aの平均値は120ではない

 

2.

母平均の両側t検定を行う。有意水準\alphaは0.05とする。

 

3.

標本の大きさは10なので,自由度\nu = 9のt分布を用いる。両側検定なので,有意水準閾値{\displaystyle t_{0.025}(9) = 2.262}

f:id:ryosuke_okubo:20190505103129p:plain

 

f:id:ryosuke_okubo:20190505103957p:plain

棄却域

 

 

4.

統計量tを求める。

{\displaystyle t = \frac{94.95-120}{\sqrt{\frac{80.38}{10}}} = -8.84}

 

5.

統計量tは-8.84であり,棄却域に含まれる。したがって,帰無仮説は棄却でき,新薬Aの平均値は120ではないことが実証された。

 

B.対応のない2群間の,平均値の差の検定

こちらが本題である。

立証したいこと:新薬Aとプラセボの平均は等しくない

 

1.

 

2.

Welchのt検定を行う。有意水準\alphaは0.05とする。

 

3.4.

以後計算過程は省略,Pythonで実装した結果を示す。 

import numpy as np 
from scipy import stats

A = np.array([98.0,98.5,100.2,103.0,98.5,107.8,80.2,81.5,90.6,91.2])
P = np.array([105.2,91.8,102.9,108.5,113.2,91.5,92.6,95.9,103.4,104.6])

stats.ttest_ind(A, P, equal_var = False)

実行結果:Ttest_indResult(statistic=-1.619175095666121, pvalue=0.12327736996412365)

 

5.

p値は0.12であり,有意水準より大きいため棄却域に含まれない。したがって帰無仮説は棄却できず,新薬Aとプラセボの平均は等しくないことは立証できなかった。

 

なぜか?

新薬Aとプラセボの平均には6くらいの差があるにも関わらず,差があることを立証できなかった。原因としては,平均の誤差が無視できないほど大きいことにある。ここで誤差とは標準誤差のことを指し,

  • 標本の分散が小さい
  • 標本の大きさが大きい

ほど誤差は小さくなる。特に今回の例では,標本の大きさが小さいことが差があることを立証できなかった原因として考えられる。

 

参考:統計学の大物学者がP値の刷新を提案(Natureダイジェストより)

 

次回↓

 

ryosuke-okubo.hatenablog.com