t 検定
Student's t-test
概要
t検定(t-test)とは、統計量が t分布に従うことを前提とするパラメトリック検定*1の一種で、一般に2組の標本について、平均値に有意差があるかどうかを調べる際に用いられます。
前提
t検定は前提からの逸脱に対して比較的堅牢であるとされますが、次のことを前提としています。
- 標本データが母集団からランダムに抽出されている(無作為抽出)
- 分布が(ほぼ)正規分布に従うこと
- 等分散性があること(各グループのデータの散布度が類似)
帰無仮説・対立仮説
2群それぞれの平均を μ1, μ2 とした場合・・
- 帰無仮説 H0:μ1 = μ2 (μ1 -μ2 = 0) 平均 μ1 と μ2 に差がない
- 対立仮説 H1:μ1 ≠ μ2(μ1 -μ2 ≠ 0 )
用語解説
要因と水準
分散分析では要因や水準(群)が複数あることを前提に比較を行いますが、t検定は、1つの注目要因について2群の平均値の違いを検定するもので、1要因・2水準で行うのが前提です。
t 検定の種類
- 一群のt検定
母集団の平均値 μ が特定の値 μ0 と等しいか否かを検定する際に使用します。
- 対応のある2群の平均値の差の検定
例えば、同様の効果測定のために、同一被験者群に対して、実際の投薬を行なった日と偽薬を投薬した日をそれぞれ第1群、第2群とすることで、血圧降下量の平均値比較する場合。検定力はこちらが高くなります。
*サンプルサイズ(被験者数)は同一であることが前提です。
- 対応のない2群の平均値の差の検定
例えば、薬が血圧を下げる効果を確認するために、実際に投薬を行う群と、偽薬を投薬する群を分けて、投薬後の血圧降下量の平均値を比較するなど、被験者がそれぞれに異なる場合の検定。これは2群間で被験者の健康状態等に偏りがないことが必須で、少人数の実験では、本当に当該医薬品の効果なのか、それとも被験者の持つ別の要因が関係しているのかは見極めにくいという問題があります。
*サンプルサイズ(被験者数)は異なっても構いません。
Python 等の環境で t検定を行う場合、一般に「2 つのデータ間に対応がなく、正規性および等分散性が仮定できる」ことを前提に「Student の t検定」が用いられますが、2つの群に等分散性が仮定できない場合は、Welchの方法を採用します(以下のプログラムサンプルに具体的な事例を記載しています)。
サンプルプログラム
正規乱数で2群のデータを作って、t検定を行うサンプルです。
https://github.com/koichi-inoue/JupyterNotebook/blob/master/t_test.ipynb