今回は、Rでt検定を実行する方法と、t検定の手法選択に必要な等分散性の検定の方法を紹介します。
t検定とは?
あくまでRでのt検定のやり方の紹介ですので、詳細な理論説明は省略しますが、ざっくりt検定を説明します。
t検定は2つの群の平均値の差に違いがあるかを調べる検定です。
前提条件として、2つの群がともに正規分布に従うという点があります。
t検定の中にもいくつか種類があり、2つの群の分散が同じといえるかどうかによって使用する手法も異なります。
そのため、t検定を実施する前に等分散性の検定(F検定)を行い、2つの群の分散の違いを確認した後に、適切なt検定の方法で検定を行うのが一般的な流れです。
今回も、等分散性の検定→t検定の順にやり方を確認していきましょう。
等分散性の検定
等分散性の検定(F検定)の、Rでの実施方法は
var.test(A, B) です。
適当なサンプルデータを作成して実際にやってみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#サンプルデータの作成 dataA <- c(15,19,4,6,18,8,14,5,10,12,20,5) dataB <- c(15,18,16,3,14,10,12,15,16,1,19,15) #F検定 var.test(dataA,dataB) F test to compare two variances data: dataA and dataB F = 1.0839, num df = 11, denom df = 11, p-value = 0.8961 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.3120293 3.7651280 sample estimates: ratio of variances 1.083896 |
p値(p-valueの部分)が0.8961となりました。
この検定の帰無仮説は2群の分散が等しいということなので、有意水準を5%とすると、この仮説を棄却できなかったことになり、等分散と仮定します。
F検定の結果はざっくりと下記のように解釈しましょう。
- p値>有意水準…2つの群は等分散といえる
- p値<有意水準…2つの群の分散は異なるといえる
t検定
等分散性を確認した後は、それぞれ次の方法によりt検定を実施します。
- 等分散である…Studentのt検定
- 分散が異なる…Welchのt検定
それぞれのやり方を見てみましょう。
Studentのt検定
RでStudentのt検定を実施する際は
t.test(データA, データB, var.equal = TRUE) と書きます。
「var.equal」が分散が同じかどうかを指定するオプションなので、等分散の場合はTRUEにしているんですね。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#Studentのt検定 t.test(dataA, dataB, var.equal = TRUE) Two Sample t-test data: dataA and dataB t = -0.64211, df = 22, p-value = 0.5274 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -6.344645 3.344645 sample estimates: mean of x mean of y 11.33333 12.83333 |
結果を見ると、p値は0.5274と出ています。
t検定の帰無仮説は2つの群の平均値に差がない、というものなので、有意水準5%のもとではこの仮説は棄却されないことになります。
つまり、差があるとはいえない、ということですね。
Welchのt検定
RでWelchのt検定を実施する際は
t.test(データA, データB, var.equal = FALSE) または
t.test(データA, データB)
と書きます。
2つ目の書き方はvar.equalを指定しないけどいいの?と思われた方、、
そう、Rではvar.equalのデフォルトの設定はWelchのt検定になっているのです!
今回のサンプルデータは等分散でしたので本来はWelchのt検定を使うものではないですが、一応結果画面を見ておきましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#Welchのt検定 t.test(dataA, dataB) Welch Two Sample t-test data: dataA and dataB t = -0.64211, df = 21.964, p-value = 0.5274 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -6.3451 3.3451 sample estimates: mean of x mean of y 11.33333 12.83333 |
結果の部分に Welch Two Sample t-test と表示されています。
本当はStudentのt検定をやりたかったのに、var.equalの設定を忘れて実はWelchのt検定をやっていた、とならないようにp値だけではなく結果画面は全体をしっかり確認しておきましょう。
コメント