◀ Previous | TOC | Next ▶ |
同一条件での繰り返し実験の数が限られる(3〜5). 例えば, ファーメンテーターでの酵素反応実験ならば, 1 回の実験に数日かかることはざら. 多くの条件による違いを検討したければ, 1 条件での繰り返し数は限られる.
例として, 条件 I と条件 II でそれぞれ 3 回の繰り返し実験を行って, 生産物濃度 \(x \ \mathrm{g /L}\) として, 以下の値を得たとする.
\begin{align*} \boldsymbol x_\mathrm I & = \{10.1, 10.4, 9.8 \} \\ \boldsymbol x_\mathrm{II} & = \{10.7, 11.6, 11.3 \} \end{align*}
これらは, それぞれ, 母集団 I, II からのサイズ 3 のサンプルである.
この 2 つの実験結果に有意な差があるかどうか, を判定するのであるが, 統計的には, 条件 I の母集団の平均値 \(\mu_\mathrm{I}\) と条件 II の母集団の平均値 \(\mu_\mathrm{II}\) に差があると言えるかどうかを, データ \(\boldsymbol x_\mathrm{I}\), \(\boldsymbol x_\mathrm{II}\) にもとづいて調べることになる.
「有意差がある」, 「有意差があるとは言えない」, という 0 か 1 かの判断ではなく, \(p\) 値(後述)や信頼区間を報告することが推奨されている.
通常, \(p=0.05\), \(p=0.1\) 以下であれば, それぞれ水準 5%, 10% で有意差が認められる, という.
しかし, \(p\) 値がこれよりも大きいとき, 「有意差がない」とは言えない. あくまで, 有意差があるはいえない, 差があることを強く示す統計的根拠はない, ということである.
否定したい結論を帰無仮説として設定, この仮説のもとに実験結果のようなデータが得られる確率(\(p\)-値)を計算し, \(p\) が十分小さければ仮説を棄却(reject)する.
2 つのデータに有意な差があるかどうかを判定する場合, 帰無仮説(null hypothesis) \(H_0\) は,条件 I の母集団の平均を \(\mu_\mathrm I\), 条件 II の母集団の平均を \(\mu_\mathrm{II}\) として
対立仮説(alternative hypothesis) \(H_1\) は
仮説は, パラメーターについての仮説であることに注意.
母集団について検定するわけである.
英語では Type-I error, Type-II error である. 訳語はどうも堅苦しい.
第 1 種過誤は, 実は \(H_0\) が正しいのに, それを棄却してしまうこと.
第 2 種過誤は, 実は \(H_1\) が正しいのに, 棄却しそこなうこと.
化学, 生物分野, 化学工学・生物化学工学では, 同一条件での繰り返し実験数を多くとることは難しく, 慣習として 3 回程度の繰り返し実験の結果からデータ解析を行うことが多い.
このような条件下で, 有意差の有無について検定する方法は, Student の \(t\) 検定くらいしかない.
Student の \(t\)-検定は,
2 つの母集団がともに正規分布に従っている,
2 つの母集団の分散が等しい
2 つの母集団は独立である
という仮定の上に成り立っている.
仮定が成り立っているか不明な場合については後述
例えば, 2 つの標本, \(\boldsymbol x_\mathrm I\), \(\boldsymbol x_\mathrm {II}\) に有意差があるかどうか検定する場合には, 次の 2 つの仮説を設定する.
例えば, 独立な 2 標本の \(t\)-検定の場合, 標本の大きさを \(n_1\), \(n_2\), 標本分散(不偏分散)を \(S_1\), \(S_2\) として, 以下のステップに従って Student の \(t\) を計算する.
\[S_p^2 = \frac{S_1^2 (n_1 - 1) + S_2^2 (n_2 - 1)}{n_1 + n_2 - 2} \tag{2.1}\]
この形だとややこしくみえるが, 実は, \(S_p^2\) は, それぞれの平均値に対する差の平方和を自由度 \(n-2\) で除したものである. その意味で, 1 群での標本分散と本質的に同じである.
また, ここで, 等分散を仮定していることから, 平方和を足すことができる.
step 2.2 平均値の差 \(\bar X_1 - \bar X_2\) に関して次の \(t\)-統計量を算出する.
これらの導出は別項
自由度 \(n_1 + n_2 -2\) の \(t\) 分布から 統計量 \(t\) に対応する \(p\)-値を計算する.
\(p < 0.1\) の場合, 0.1 水準で有意差がある, \(p<0.05\) の場合, 0.05 水準で有意差がある, とする.
自由度 \(n_1 + n_2 - 2\) の \(t\) 分布から, \(t_\alpha\), の値を計算し, 信頼区間を次式で算出する(両側検定の場合).
ここで, \(S_p= \sqrt{S_p^2}\) は平均値の差の標準偏差で, 合併分散(プールされた分散)の平方根, \(t_\alpha\) は水準 \(\alpha\) における \(t\) の値である.
95%信頼区間に 0 が含まれていれば, 0.05 水準で有意差がある, ということになる.
条件 A, 条件 B ののもとで, それぞれ 3 回の繰り返し実験を行い, 試料中の成分 P の濃度として次の値を得た (単位は, μg/L). それぞれの標本は, 同じ分散をもつ正規分布から得られたものと考えてよいとする.
条件 |
測定値 |
---|---|
A |
10.1 10.4 9.8 |
B |
10.7 11.6 11.3 |
標本 A, 標本 B それぞれの標本平均と標本標準偏差(不偏分散の平方根)を求めよ.
標本 A と標本 B の平均値の差の, 合併分散, 標準偏差を求めよ.
標本 A と標本 B の平均値の差の 95% 信頼区間を求めよ.
結果は, 水準 \(\alpha=0.05\) で有意であると言えるか.
\(p\)-値を求めよ.
独立 2 群の差の検定であり, ここでは, 独立 2 標本 \(t\)-検定を行う.
標本 A, 標本 B それぞれの平均値, 標本分散(不偏分散)と標準偏差(題 1.1 を参照).
平均値の差の標本合併分散 \(s_p^2\) を式 (2.1) で算出, それをもとに合併標準偏差 \(s_p\) を計算する.
\(t\)-検定で信頼区間を算出する. 自由度 4 の \(t\)-分布の \(\alpha = 0.05\) の \(t\)-値, \(t_\alpha\) を \(t\)-分布表から求め, 95% 信頼区間を式 (2.3) で求める.
信頼区間による検定: 95% 信頼区間が 0 を含まないので, 水準 \(\alpha = 0.05\) で平均値に有意な差があるといえる.
\(p\)-値による検定: Student の \(t\)-統計量を式 (2.2) で計算し, 自由度 \(3 + 3 - 2 = 4\) の \(t\)-分布から, \(p\)-値を計算する.
\(p\)-値からも, 水準 \(\alpha=0.05\) で平均値に有意な差があるといえる.
scipy.stats.ttest_ind を使う.
使い方は極めて簡単.
\(t\)-統計量と \(p\)-値が出力される.
paired \(t\)-test には scipy.stats.ttest_rel を使う.
[1]:
# Scipy.stats.ttest_ind
import numpy as np
import scipy.stats
x = [10.1, 10.4, 9.8]
y = [10.7, 11.6, 11.3]
res = scipy.stats.ttest_ind(x, y)
print(res)
Ttest_indResult(statistic=-3.47850542618521, pvalue=0.02538644793661544)
Student の \(t\)-統計量は, 母集団が正規分布に従い, かつ母分散が等しい場合で, 標本サイズが小さいときに用いられる.
2 群間Student’s :math:`t`-test の仮定: 正規分布, 等分散性, 独立,
サンプル数が少ないと正規性の検定は無理(正規性を仮定しても問題ないという根拠が必要だが, 必ずしも根拠が明らかでない場合にも使われれいる).
慣習的に, 同じものを測定しているのだから, 実験データのばらつきは正規分布に従っているだろう, という期待でやっているのが実情であろう.
統計学的にはクエスチョンマークがつくが, 各専門分野ではそれぞれの判断があり得る.
等分散性が成立するときもしないときも, Welch の \(t\)-検定を使う.
Welch の \(t\)-検定は,
2 つの母集団がともに正規分布に従っている,
2 つの母集団は独立である,
2 つの母集団の分散が等しいか否かはわからない,
ときに使う.
\(W\) は自由度 \(\nu\) の \(t\)-分布に従う. \(\nu\) は次の式で推算できる.
次のような独立なサンプルが得られたとする.
Welch の \(t\)-test でデータの母数の平均値に有意差があるかどうか検定せよ.
x = [0.61, 1.69, 0.75 , 0.44, 1.16]
y = [1.43, 1.76, 1.79, 1.33]
[69]:
import scipy.stats
x = [0.61, 1.69, 0.75 , 0.44, 1.16]
y = [1.43, 1.76, 1.79, 1.33]
res = scipy.stats.ttest_ind(x, y, equal_var = False)
print(res)
Ttest_indResult(statistic=-2.5649599674782246, pvalue=0.043481803801431025)
\(\texttt{scipy.stats.ttest_ind}\) にて, \(\texttt{equal_value=False}\) を指定すると Welch の \(t\)-test となる.
\(p=0.043\) で水準 0.05 で有意な差がある.
Student |
Welch |
|
---|---|---|
等分散性 |
等分散が確実 |
等分散かどうか不明 |
\(T\) 値の分母 |
\[S_p \sqrt{\frac{1}{n_1} + \frac{1}{n_2}}\]
|
\[\sqrt{\frac{S_1}{n_1} + \frac{S_2}{n_2}}\]
|
自由度 |
\[n_1 + n_2 - 2\]
|
h:: hat nu = frac{left(dfrac{S_1^2}{n_1} + dfrac{S_2^2}{n_2} right)^2}{dfrac{(S_1^2/n_1)^2}{n_1 - 1} + dfrac{(S_2^2/n_2)^2}{n_2 - 1}} |
ここで, Student の \(t\)-検定の欄の \(S_p\) は合併分散で, 次で表される.
◀ Previous | TOC | Next ▶ |