対応のないt検定

はじめに

対応のないt検定は、2標本に対応がなく母集団に正規分布を仮定できる場合に用いられる平均値の差の検定です。なお、正規分布を仮定できない場合はマン・ホイットニーのU検定を用います。

実践

平均値が異なる正規分布からサンプリングされた標本Aおよび標本Bに対して、対応のないt検定を行います。実装はscipy.stats.ttest_indを利用します。

scipy.stats.ttest_indは引数にequal_varを取ります。等分散が仮定できない場合、この値をFalseに設定することでウェルチのt検定を行います。正確に言うと、ウェルチのt検定は分散が等しい場合もそうでない場合もどちらにも適用できます。

scipyのリファレンスにも以下のような記載があります。

equal_varbool, optional
If True (default), perform a standard independent 2 sample test that assumes equal population variances [1]. If False, perform Welch’s t-test, which does not assume equal population variance [2].
New in version 0.11.0.

1
2
3
4
5
6
7
8
9
import numpy as np
from scipy import stats

group_a = np.random.normal(0, 1, 50)
group_b = np.random.normal(0.5, 1, 50)

t, p = stats.ttest_ind(group_a, group_b, equal_var=False)

print (p)

参考

ソースコードは以下の書籍を参考にさせてもらいました。Pythonで統計学を学べるおすすめ書籍です。

記事情報

  • 投稿日:2021年5月20日
  • 最終更新日:2020年5月20日