« [その他]NFL | トップページ | [統計]GLMの交互作用-余 »

2007.12.22

[統計]GLMの交互作用

 分散分析などで交互作用(interaction)といえば、各要因つまり説明変数の一次式で説明できない、目的変数の期待値と実際の平均の”ずれ”のことである。そこで、”ある説明変数の効果が他の説明変数の値により異なること”といった表現もされる。二元配置分散分析などのよく教科書での説明に出てきた例では、ある説明変数たちの値に対する目的変数の期待値と平均の差として交互作用が説明されている。一般化線形モデル(GLM)でも交互作用は簡単に導入できるが、1つの説明変数として扱われているように見え、回帰係数なども推定されている(以下は、GLM用のソフトウェアの関数などでの交互作用の扱いをご存知の方にとっては、決まりきった・わかりきった内容だろう)。
 Rの関数glm(一般化線形モデルによるデータ解析ではたぶん相当広く使われているだろう)では、説明変数x1と説明変数x2の交互作用は、あいだにコロンをはさんで、x1:x2と書かれる。その意味は、x1とx2の積を新しい説明変数として、あとは普通に(というのは1つの説明変数として、とくに他のものとちがった取り扱いをすることなく、という意味である)回帰[広義]したもののようだ。
 以下はR内蔵のデータセットの1つであるairqualityを使った計算例である。MonthとDayの積であるMDという変数を追加しておく、
> airquality$MD<-airquality$Month*airquality$Day
MDの最小値は以下のように5になっている(5月1日から始まるデータだから)、
最小値 5.0  Median 105.0 Mean 110.4 最大値270.0

 正規線形モデル(線形の重回帰)でもポアソン回帰でも同様の結果になるのだが、以下はガンマ回帰の例である(結果はRで表示されるものを一部省略して簡単にしてある)、
> resultG1<-glm(Temp~Day+Month+MD,family=Gamma,data=airquality)
> resultG2<-glm(Temp~Day*Month,family=Gamma,data=airquality)
 まず2説明変数の積を説明変数として加えたもの
> summary(resultG1)

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.748e-02 1.213e-03 14.409 < 2e-16 ***
Day -8.848e-05 6.761e-05 -1.309 0.1926
Month -7.037e-04 1.659e-04 -4.241 3.89e-05 ***
MD 1.556e-05 9.311e-06 1.671 0.0969 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 次に交互作用を入れたもの
> summary(resultG2)

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.748e-02 1.213e-03 14.409 < 2e-16 ***
Day -8.848e-05 6.761e-05 -1.309 0.1926
Month -7.037e-04 1.659e-04 -4.241 3.89e-05 ***
Day:Month 1.556e-05 9.311e-06 1.671 0.0969 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1


2つの結果(とくにDay:MonthとMDのところ)を見比べると同じである。

 さて、交互作用を検討する際、目的によっては、2説明変数の積を新しい変数にしてその効果を見るのは不適当なこともあるだろう。ある説明変数ともう1つの説明変数の効果が独立でないとは積で効くということとはちがうこともけっこうありそうである。交互作用に限ったことではないが、式をいったんは書いてみて、自分の目的に合っているかどうかひとしきり(×2くらいは)考えてみた方がいいだろう。
 

|

« [その他]NFL | トップページ | [統計]GLMの交互作用-余 »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [統計]GLMの交互作用:

« [その他]NFL | トップページ | [統計]GLMの交互作用-余 »