二群比較と回帰分析の関係


今回は二群比較と回帰分析の関係について考えたいと思います。
前回のブログでは、ANOVAと二群比較が共に「目的とする効果による変動が誤差による変動に対して有意に大きいか」という発想を根底に持つという意味で共通しているのだという議論を行いました。
実は、回帰分析と二群比較も同様の議論が可能です。
二群比較と単回帰分析は本質的に同じことをしているのです!
単回帰分析モデルの一般式は
y = βx + α + ε
と表されます。
これは、まさに目的の効果と誤差を分離して、説明変数を説明しようとしている式です。
これを前提にして、二群比較のそれぞれの群に0と1のダミー変数を与えて、回帰分析を行うと、通常のt検定をと同じp値が得られます。
以下では、Rを用いて検証を行いました。

> cityA <- c(178, 182, 181, 179, 178, 182, 181, 179, 173, 187, 170, 190)
> cityB <- c(168, 172, 174, 166, 169, 171, 165, 175, 162, 178, 164, 176)

> dat <- c(cityA, cityB)
> dat
 [1] 178 182 181 179 178 182 181 179 173 187 170 190 168 172 174 166 169 171 165
[20] 175 162 178 164 176

#ダミー変数を用いてcityAに0を、cityBに1を与える

> city <- c(rep(0,12), rep(1,12))
> city
 [1] 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1

#この段階で散布図を描写
> plot(dat~city)
#回帰分析
> summary(lm(dat~city))

Call:
lm(formula = dat ~ city)

Residuals:
   Min     1Q Median     3Q    Max 
 -10.0   -2.5    0.0    2.5   10.0 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   180.00       1.52 118.416  < 2e-16 ***
city          -10.00       2.15  -4.652 0.000123 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 5.266 on 22 degrees of freedom
Multiple R-squared: 0.4959, Adjusted R-squared: 0.473 
F-statistic: 21.64 on 1 and 22 DF,  p-value: 0.0001228 


#通常の2群間比較をt検定にて行う
> t.test(cityA, cityB, var.equal=F)

Welch Two Sample t-test

data:  cityA and cityB 
t = 4.6518, df = 21.96, p-value = 0.0001233
alternative hypothesis: true difference in means is not equal to 0 
95 percent confidence interval:
  5.541324 14.458676 
sample estimates:
mean of x mean of y 
      180       170 

#散布図の上に回帰直線を描写する
> plot(city, dat)
> abline(lm(dat~city))
大学の一般教養の講義や導入書では、anovaやtテスト、回帰分析を別個の物として扱うに留まっていることが多いように感じます。しかし、一般線形モデルを意識しながらこれらを眺めると、「目的の効果と誤差を分離する」という共通原理が浮き彫りになってきます。

Peter Dalgaard『Rによる医療統計学』2007 丸善株式会社  92 - 96pp