Rによるスチューデントのt検定
R にてt検定を実行する.t検定は対応のないt検定と対応のあるt検定に分けられ,さらに,対応のないt検定はスチューデントのt検定とウェルチのt検定のふたつに分類される.スチューデントのt検定やウェルチのt検定は,2群間の平均値が独立である場合に用いることができる.例えば,東京都と大阪府出身の成人男性の身長の平均値の差の検定とかをしたい場合には対応がないt検定を使う.スチューデントおよびウェルチの2種類の検定法は,与えられた2群のデータが互いに等分散であるかどうかに基づいて,その使用を決定する.2群間の分散が等しい場合にはスチューデントのt検定を,等分散とはみなせられない場合にはウェルチのt検定を用いる.等分散性の検定にはF検定を用いることができる.ただし,F検定の後にt検定を用いることは検定の繰り返し行為に該当するため,正しくないと考える見方もある.
t検定の使い分け
t検定は以下の表に従って使い分ける.
状況 | 適用すべきt検定 |
---|---|
データに対応がある. | 対応のあるt検定 |
データに対応がなく,2群間に等分散性が仮定できる. | スチューデントのt検定 |
データに対応がなく,2群間に等分散性が仮定できない. | ウェルチのt検定 |
p値の計算
スチューデントのt検定を行うために以下のようなデータを考える.データXの値は平均値9,標準偏差1.5の正規分布に従う値で,データYの値は平均値3,標準偏差1.5の正規分布に従う値である.
データX | 6.3, 8.1, 9.4, 10.4, 8.6, 10.5, 10.2, 10.5, 10.0, 8.8 |
データY | 4.8, 2.1, 5.1, 2.0, 4.0, 1.0, 3.4, 2.7, 5.1, 1.4, 1.6 |
これらのデータを以下のようなコマンドで,適当な変数,vx と vy に読み込む.
$ vx=c(6.3, 8.1, 9.4, 10.4, 8.6, 10.5, 10.2, 10.5, 10.0, 8.8) $ vy=c(4.8, 2.1, 5.1, 2.0, 4.0, 1.0, 3.4, 2.7, 5.1, 1.4, 1.6)
これらのデータのサンプルサイズは一致しないので,少なくとも対応はない.よって,スチューデントかウェルチのt検定を行うが,それを決めるためにF検定を行う.以下のように打つ.有意水準を0.05と決める.F検定の帰無仮説は,対象の2群の分散に差はないこと,なので p<0.05 なら帰無仮説は棄却され,対象の2群は不等分散,それ以外の場合は等分散と結論される.
$ var.test(x=vx,y=vy)
これを実行した結果は以下のようになる.
F test to compare two variances data: vx and vy F = 0.77921, num df = 9, denom df = 10, p-value = 0.718 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.2061978 3.0886979 sample estimates: ratio of variances 0.7792137
結果より p>0.05 なので,対象の2群が等分散であるという帰無仮説が保留され,2群間は等分散であること (少なくとも不等分散でないこと) が示唆された.よって,これら2群の検定にはスチューデントのt検定を用いる.スチューデントのt検定はコマンド t.test() にて実行できる.実際には,t.test(x=データセット1,y=データセット2,var.equal=T,paired=F) とする.有意水準は0.05とする.帰無仮説 (H0) は,2群間の平均値に差がないこと,となる.
$ t.test(x=vx,y=vy,var.equal=T,paired=F)
これを実行した結果は以下のようになる.結果から,p<0.05 なので帰無仮説が棄却され,データXとデータYには差があると結論する.
Two Sample t-test data: vx and vy t = 9.8511, df = 19, p-value = 6.698e-09 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: 4.931393 7.592244 sample estimates: mean of x mean of y 9.280000 3.018182
スチューデントのt検定はこのように実行できる.しかし,実際の研究の現場では,多くの場合得られるデータがt検定をするに十分でない場合がある.そのため,実用上はt検定より,ウィルコクソンの順位和検定やウィルコクソンの符号順位検定を積極的に使うべきである.その方が安全.
オプション一覧
オプションには以下のようなものがある.
オプション | 詳細 |
---|---|
x | ベクトル形式のインプットデータ.必須. |
y | x と比較したいデータ. |
alternative | 両側検定か片側検定の指定.'alternative="t"' のように指定する.両側検定は 't',左側検定は 'l',右側検定は 'g'を指定する.デフォルトは両側検定. |
paired | T か F で指定.データ間に対応があるかないかを指定するオプション. |
var.equal | データ間に等分散性が仮定できるかどうかを T または F で指定.対応のあるt検定をする場合,不要. |