No.04211 重回帰分析での交互作用項のセンタード化の具体的方法  【まだまだ統計初心者】 2007/08/22(Wed) 19:16

よろしくお願いいたします。まだまだ初心者で文系人間で初めて交互作用項を作成しました。
重回帰分析で独立変数に使用する交互作用項の作成等に関して,多重共線性の回避のためにセンタード化(センター化,中心化)する具体的な方法を教えて下さい。過去に掲載された情報を閲覧しましたが,初心者の私には完全にはわかりませんでした。

まず,独立変数に変数x,y,xy(xにyをかけた交互作用項)を投入すると予想通り多重共線性の問題が生じました。
そこで,変数x,yをセンタード化し,x'(xからxの平均値を引いたもの),y'(yからyの平均値を引いたもの),xyを投入すると,結果は変わらず,依然として多重共線性の問題が残ったままでした。
xyも処理しなければいけないのかと考え,センタード化したx'とy'をかけたx'y'という交互作用項を作成し,x',y',x'y'を投入すると多重共線性の問題は解決しました。
この方法でよいのでしょうか? xy(xにyをかけた交互作用項)を作成してからその平均値を引いた別のx"y"を作成する方法もあるのかなどと考えると,こんがらがり,どの方法が正しいのかがわかりません。

この疑問の解答が載っていそうな文献 Aiken & West (1991) Multiple Regression はまだ入手できていません。

どなたか具体的にわかりやすくご教示お願い申し上げます。

No.04218 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【まだまだ統計初心者】 2007/08/23(Thu) 21:32

つまるところ,上記記述で,交互作用項は,xをセンタード化したx'と,yをセンタード化したy'を乗じて(x' * y')作成した 「x'y'」 を使用する,でよいのでしょうか?

どうぞよろしくお願い致します。

No.04230 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【ライト】 2007/08/24(Fri) 11:58

独立変数XとYは量的変数ですか?質的変数ですか?
量的変数なら,普通にX,Y,XYを説明変数としても解けると思いますが。

No.04236 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【まだまだ統計初心者】 2007/08/24(Fri) 13:37

ライト様。対応ありがとうございます。

独立変数の,Xは質的変数(ダミー変数 性別,男=1,女=0),Yは量的変数(例えば友人数,健康得点など)です。(ダミー変数なので量的変数として扱われているとも言えるかと思います)
社会科学系の国内外の原著論文をみると,性別の交互作用をみるため,上記のような使用方法が多いようです。

はじめに書き込んだように,「普通にX,Y,XYを説明変数」として重回帰分析すると,多重共線性の問題が発生してしまいました。

ですので,実測値から平均値を引いたセンタード化した変数を用いるのが望ましいと理解しております。

なので,X',Y',X'Y'の3変数の投入でやり方があっているのかを教えていただきたいのです。

 X'とは,Xの実測値マイナス平均値 としてセンタード化した変数。
 Y'とは,Yの実測値マイナス平均値 としてセンタード化した変数。
 X'Y'とは,X'*Y' として算出した変数(交互作用項)

これで間違っていないのでしょうか?
よろしくお願いいたします。

No.04238 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【ライト】 2007/08/24(Fri) 15:32

これはいわゆる「共分散分析」ってやつですね。

Xが質的変数(3カテ),Yが量的変数の場合,データが
X	Y
1 4
1 10
1 5
2 1
2 4
2 10
3 3
3 8
3 8
だとしたら,XをX1,X2というダミー変数とし,
X1	X2	Y	X1Y	X2Y
1 0 4 4 0
1 0 10 10 0
1 0 5 5 0
0 1 1 0 1
0 1 4 0 4
0 1 10 0 10
0 0 3 0 0
0 0 8 0 0
0 0 8 0 0
のように説明変数を作れば分析できます。
センタード化ってのをしなくてもできると思いますよ。

No.04239 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【まだまだ統計初心者】 2007/08/24(Fri) 20:15

ライト様

ていねいなご指導ありがとうございます。
試してみたいと思います。

しかしながら,私の社会科学系の領域(健康の要因分析など)では,国内外の著名な原著論文には,重回帰分析や多重ロジスティック回帰分析で,質的,量的変数を問わず,交互作用項を用いたものが散見されます。
ですのでセンタード化した変数に関して知りたいのです。

実際の変数としては以下のようなイメージです。

例)従属変数:健康満足度得点

独立変数:
 年齢,性別,経済状況,身体状況,友人知人からの支援の有無,身体状況と友人知人からの支援の有無の交互作用(身体状況 × 友人知人からの支援の有無)

No.04240 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【青木繁伸】 2007/08/24(Fri) 20:51

ライトさんのデータ例を使わせてもらって,中心化の効果を見てみましょう
> d
X1 X2 Y X1Y X2Y
1 1 0 4 4 0
2 1 0 10 10 0
3 1 0 5 5 0
4 0 1 1 0 1
5 0 1 4 0 4
6 0 1 10 0 10
7 0 0 3 0 0
8 0 0 8 0 0
9 0 0 8 0 0
> tolerance(d) # トレランスを計算
tolerance VIF
X1 0.09971693 10.028387
X2 0.13629283 7.337143
Y 0.20107239 4.973333
X1Y 0.09144902 10.935054
X2Y 0.12969368 7.710476
解釈:トレランスの低いものが多い
> d[,1:3] <- scale(d[,1:3], scale=FALSE) # X1, X2, Y を中心化
> d[,4] <- d[,1]*d[,3] # 交互作用項は中心化したもの同士の積
> d[,5] <- d[,2]*d[,3]
> d # こんな風になる
X1 X2 Y X1Y X2Y
1 0.6666667 -0.3333333 -1.8888889 -1.2592593 0.6296296
2 0.6666667 -0.3333333 4.1111111 2.7407407 -1.3703704
3 0.6666667 -0.3333333 -0.8888889 -0.5925926 0.2962963
4 -0.3333333 0.6666667 -4.8888889 1.6296296 -3.2592593
5 -0.3333333 0.6666667 -1.8888889 0.6296296 -1.2592593
6 -0.3333333 0.6666667 4.1111111 -1.3703704 2.7407407
7 -0.3333333 -0.3333333 -2.8888889 0.9629630 0.9629630
8 -0.3333333 -0.3333333 2.1111111 -0.7037037 -0.7037037
9 -0.3333333 -0.3333333 2.1111111 -0.7037037 -0.7037037
> tolerance(d) # トレランスを計算
tolerance VIF
X1 0.7266634 1.376153
X2 0.7170196 1.394662
Y 0.8213454 1.217515
X1Y 0.5730993 1.744898
X2Y 0.5140837 1.945209
解釈:トレランスに問題のある変数はなくなった
tolerance 関数は,http://aoki2.si.gunma-u.ac.jp/R/ にあるもの

No.04248 Re: 重回帰分析での交互作用項のセンタード化の具体的方法  【まだまだ統計初心者】 2007/08/26(Sun) 09:05

青木先生ご教示ありがとうございました。

● 「統計学関連なんでもあり」の過去ログ--- 040 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る