glm()
のパラメーター推定値 (estimates of coefficients)
の summary()
の表にでてくる t
だの z
だのがちょっと気になったのだが
……
family = gaussian
の場合の例を考えると,
> (y <- rnorm(10, mean = 0.1, sd = 1)) [1] 0.0035866 -0.1161750 -0.6117348 0.8111811 -0.5777867 1.4966526 0.2464104 [8] -0.7588385 3.2370962 -0.8850454上のように, てきとーなる例題データを作って
glm()
関数で推定してみると下のようになる.
> summary(glm(y ~ 1)) Call: glm(formula = y ~ 1) Deviance Residuals: Min 1Q Median 3Q Max -1.170 -0.888 -0.341 0.385 2.953 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 0.285 0.404 0.7 0.5 (Dispersion parameter for gaussian family taken to be 1.6343) Null deviance: 14.709 on 9 degrees of freedom Residual deviance: 14.709 on 9 degrees of freedom AIC: 36.24 Number of Fisher Scoring iterations: 2このように係数の推定値 (
Estimate
)
と標準誤差 (Std. Error
)
の比である t value
(これは t 検定の検定統計量とだいたい同じもの)
とかを使って
「t 検定の P 値とだいたい同じと思われる確率」
を評価している.
(後記: 翌日のぎょーむ日誌も参照)
Std. Error
)
は標準偏差 / 標本数とだいたい同じ量になっている.
ここでの計算は
は標準偏差 / (標本数 - 1)
ではない.
family = gaussian
でない場合だ.
先ほどと同じような例題で計算させてみると,
下のようになる.
> (y <- rpois(10, lambda = exp(0.1))) [1] 2 1 4 3 1 1 0 1 2 3 > summary(glm(y ~ 1, family = poisson(link = "log"))) Call: glm(formula = y ~ 1, family = poisson(link = "log")) Deviance Residuals: Min 1Q Median 3Q Max -1.897 -0.651 -0.253 0.648 1.410 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) 0.588 0.236 2.49 0.013 (Dispersion parameter for poisson family taken to be 1) Null deviance: 8.6586 on 9 degrees of freedom Residual deviance: 8.6586 on 9 degrees of freedom AIC: 33.14 Number of Fisher Scoring iterations: 5
family = gaussian
の場合とのちがいは:
t value
でなく z value
になっている
(ただし算出方法は同じで Estimate/Std.Erro
)
Pr(> |z|)
は pnorm(0, 0.588, 0.236) * 2
で計算されている
……
ただし,
じつは family = gaussian
の場合であっても同様では
(pt()
を使ってないのでは)? なる疑惑あり
(後記: 翌日のぎょーむ日誌参照)
Pr(> |z|)
の確率が 0.05 より小さくても
***
などといった「お星様」がつかない
……
これは最近の version の R になって新しく改善されたところ
(後記 2009-08-17:
と思ったら私のうっかりまちがいで,
「星」がつくかどうかは
R の option の #{code show.signif.stars}
だけに依存している
(#{code options(show.signif.stars=FALSE)}
などで設定可能)
→ 参照)
summary(glm(..., family = poisson))
の coefficients の表をみて「係数の検定やりました」
とか誤解するヒトの数は少しばかり減るだろう.
Pr(> |z|)
は何をあらわしているのか?
これは係数の推定値 (estimate)
の Wald confidence interval (Wald CI; Pawitan 本 2.7 節など参照)
で「区間の端にちょうどゼロがくるように
設定した大きさ p の Wald CI の p」
をあらわしている
(信頼限界; confidence limits),
ということになる.
上の例でいうと
「大きさ 98.7% (= 100 - 1.3)
もしくはそれより大きい Wald CI をとると
ゼロが含まれる」
という意味だ.
family = gaussian
ではない
summary(glm(...))
の係数の z 値や
Pr(> |z|)
をみたときの説明のしかたとしては