t検定(対応なし、母分散が未知で等しくない場合)

ウェルチの検定(ウェルチのt検定、ウェルチの近似法)

例題(分散が等しい例題と同じ内容ですが、サンプルが異なります)
回復期病棟で3週間入院した脳卒中患者を対象とした。A病院の患者群をA群、B病院の患者群をB群としてFIM利得を比較した。両群の患者属性、入院時FIM、治療内容については傾向スコアにて調整した。

同じ分散をもつ正規分布から抽出したサンプルを使用します(縦のデータセット)

サンプルは下記の乱数から取り出したセットです(実行するたびに数値は異なります)

A <- round(rnorm(28, 25, 5),0)
B <- round(rnorm(31, 30, 20),0)

母分散が異なる(A群25、B群400)独立した2群の設定です

dat <- read.csv("welch.csv",header=T, fileEncoding = "Shift-JIS")
head(dat)
boxplot(data~group, data=dat)

このように両群の分散の推定値の差が大きい場合、母分散のが等しいと想定することが難しくなります

このような場合にはt値を次のように定義します

A群の平均を\(\bar{A}\)、B群の平均を\(\bar{B}\)

A群の母平均を\(\mu_A\)、B群の母平均を\(\mu_B\)

A群のサンプルサイズを\(n_A\)、B群のサンプルサイズを\(n_B\)

A群の不偏分散を\(s_A^2\)、B群のサンプルサイズを\(s_B^2\)

\(t=\dfrac{\bar{A}-\bar{B}}{\sqrt{\dfrac{s_A^2}{n_A}+\dfrac{s_B^2}{n_B}}}\)

このt値は近似的に自由度が次のようになるt分布に従うことが知られています

\(df=\dfrac{(\dfrac{s_A^2}{n_A}+\dfrac{s_B^2}{n_B})^2}{\dfrac{(\dfrac{s_A^2}{n_A})^2}{n_A-1}+\dfrac{(\dfrac{s_B^2}{n_B})^2}{n_B-1}}\)

Rでウェルチの検定を実行してみましょう

t.test(data~group, data=dat)

t値と自由度を確認してみましょう

nA <- length(dat[dat$group=="A","data"])#サンプルサイズ
nB <- length(dat[dat$group=="B","data"])#サンプルサイズ
vA <- var(dat[dat$group=="A","data"])#不偏分散
vB <- var(dat[dat$group=="B","data"])#不偏分散
mA <- mean(dat[dat$group=="A","data"])#平均
mB <- mean(dat[dat$group=="B","data"])#平均
(t <- (mA - mB)/sqrt(vA/nA + vB/nB))
(df <- ((vA/nA + vB/nB)^2)/(((vA/nA)^2)/(nA-1) + ((vB/nB)^2)/(nB-1)))

コメント

タイトルとURLをコピーしました