★ ペアワイズ削除時の分散分析表 ★

7370. ペアワイズ削除時の分散分析表 とみた 2005/08/04 (木) 18:38
└7371. Re: ペアワイズ削除時の分散分析表 青木繁伸 2005/08/04 (木) 19:08
 ├7378. Re^2: ペアワイズ削除時の分散分析表 とみた 2005/08/05 (金) 11:17
 └7377. Re^2: ペアワイズ削除時の分散分析表 とみた 2005/08/05 (金) 11:12
  └7379. Re^3: ペアワイズ削除時の分散分析表 青木繁伸 2005/08/05 (金) 12:53
   └7387. Re^4: ペアワイズ削除時の分散分析表 とみた 2005/08/05 (金) 18:31
    ├7404. Re^5: ペアワイズ削除時の分散分析表 マスオ 2005/08/06 (土) 01:33
    │├7421. Re^6: ペアワイズ削除時の分散分析表 とみた 2005/08/08 (月) 19:37
    │└7405. Re^6: ペアワイズ削除時の分散分析表 青木繁伸 2005/08/06 (土) 09:35
    └7388. Re^5: ペアワイズ削除時の分散分析表 青木繁伸 2005/08/05 (金) 18:48


7370. ペアワイズ削除時の分散分析表 とみた  2005/08/04 (木) 18:38
重回帰分析による予測モデルの構築を行っています。分散分析表に関して不明な点が生じたので質問させてください。

独立変数はx1, x2, x3があり,このうちx1のみ欠測値を含んでいます。
STATISTICAを用いて次の方法で分析を行いました。

方法1
・3変数を対象として,回帰式に取り込む変数を前進ステップワイズにより選択
・欠測値はペアワイズ削除

方法2
・変数x2のみを対象として単回帰分析

方 法1の結果,x2のみが回帰式に取り込まれたので方法2を行いました。両方とも得られた回帰係数・切片が同じであるにもかかわらず,STATISTICA で出力される分散分析表の平方和の値が異なります。方法1ではペアワイズ削除しているので,平方和を求める際のケースが異なるのだと思いますが・・・。


質問は次の二つです。

1.回帰式に取り込まれた変数に欠測がない場合でも,分散分析表の平方和を求める場合には,分析対象変数に欠測があるケースの削除処理を行う必要があるのでしょうか?

2.もし必要があるとしたら,どのように行えばいいのでしょうか?(単純に欠測ケースを外して手計算しても,方法1の平方和とは合いませんでした)

よろしくお願いします。

     [このページのトップへ]


7371. Re: ペアワイズ削除時の分散分析表 青木繁伸  2005/08/04 (木) 19:08
> 方法1の結果,x2のみが回帰式に取り込まれたので方法2を行いました。両方とも得られた回帰係数・切片が同じであるにもかかわらず,

表示されている範囲内で同じなだけで,全桁出力すると違うのではないですか。

> STATISTICAで出力される分散分析表の平方和の値が異なります。方法1ではペアワイズ削除しているので,平方和を求める際のケースが異なるのだと思いますが・・・。

そのとおりでしょうね。
分析に使ったケース数がいくつになったかは出力されないのですか?

> 1.回帰式に取り込まれた変数に欠測がない場合でも,分散分析表の平方和を求める場合には,分析対象変数に欠測があるケースの削除処理を行う必要があるのでしょうか?

欠損値処理する。意味がないでしょう。
何らかの規則で,とにかくある変数セットに欠損値を含まないケースだけを使うという大前提を作っているのなら別ですが。

> 2.単純に欠測ケースを外して手計算しても,方法1の平方和とは合いませんでした

計算間違いではないですか。

そんなに大きなデータでなければ,結果と共にここに貼り付けてみればいかがですか。
あなたの手計算結果も一緒に。

     [このページのトップへ]


7378. Re^2: ペアワイズ削除時の分散分析表 とみた  2005/08/05 (金) 11:17
続きです。

> 分析に使ったケース数がいくつになったかは出力されないのですか?

ケース数という表記ではありませんが,方法1の場合は「最小ペアワイズN:9」と表示されます。


> 欠損値処理する。意味がないでしょう。
> 何らかの規則で,とにかくある変数セットに欠損値を含まないケースだけを使うという大前提を作っているのなら別ですが。

ことの発端は,先の質問1とは逆の問題でした。欠損を含む変数が回帰式に取り込まれた場合,平方和(特に残差について)を求める際には欠損ケースをどのように扱うのかを知りたかったため,STATISTICAでどのように処理されるのかを調べてみたというわけです。

     [このページのトップへ]


7377. Re^2: ペアワイズ削除時の分散分析表 とみた  2005/08/05 (金) 11:12
> 表示されている範囲内で同じなだけで,全桁出力すると違うのではないですか。

有効数字15桁まで一致することを確認済みです。


分析に使ったデータと手計算値は以下のとおりです。手計算を簡単にするため10ケースに絞って使いました。一番右の列のSUMが,Yの変動です。

CASE Y  X1   X2   X3   (Y-Yave)^2
----------
01 2.766 1.557 1.134 1.033 0.095790
02 2.327 1.622 1.041 0.774 0.016770
03 2.099 1.483 0.893 0.962 0.127806
04 1.966 ----- 0.433 0.872 0.240590
05 1.836 1.854 0.758 0.520 0.385020
06 2.788 1.305 1.183 1.564 0.109892
07 2.601 1.068 1.275 1.665 0.020880
08 2.308 1.364 0.818 0.201 0.022052
09 2.665 1.045 1.038 1.512 0.043472
10 3.209 1.228 1.523 1.983 0.566256
----------
SUM 24.565 12.526 10.096 11.086 1.628531
AVE 2.4565 1.3918 1.0096 1.1086


以下は,欠損があるケースを除いてYの変動を手計算した結果です。

CASE Y  (Y-Yave)^2
----------
01 2.766 0.065025
02 2.327 0.033856
03 2.099 0.169744
04
05 1.836 0.455625
06 2.788 0.076729
07 2.601 0.008100
08 2.308 0.041209
09 2.665 0.023716
10 3.209 0.487204
----------
SUM 22.599 1.361208
AVE 2.511


それに対して,STATISTICAの分散分析表は次のように出力されます。

方法1(ペアワイズ削除した場合)
要因 平方和  df 平均平方 F     p値
----------
回帰 1.157537 1 1.157537 26.29563 0.001357
残差 0.308141 7 0.044020  
合計 1.465677

方法2(単回帰の場合)
要因 平方和  df 平均平方 F     p値
----------
回帰 1.286152 1 1.286152 30.05215 0.000586
残差 0.342379 8 0.042797  
合計 1.628531

方法2の場合は,合計の平方和=手計算で求めたYの変動 となりますが,方法1の場合は一致しません。

     [このページのトップへ]


7379. Re^3: ペアワイズ削除時の分散分析表 青木繁伸  2005/08/05 (金) 12:53
状況は良く分かりました

> 方法1(ペアワイズ削除した場合)
> 要因 平方和  df 平均平方 F     p値
> ----------
> 回帰 1.157537 1 1.157537 26.29563 0.001357
> 残差 0.308141 7 0.044020  
> 合計 1.465677

全く変ですね。
Y からどれか一つの値を除いて平方和を求めるというのを10通りやってみても,1.465677 という数字は全く出ませんね。
STATISTICA はもっていないので確かめようがないのですが,バグでしょうかねぇ

     [このページのトップへ]


7387. Re^4: ペアワイズ削除時の分散分析表 とみた  2005/08/05 (金) 18:31
やはりバグでしょうか。
考えていても判らないので,この件についてはサポートに問い合わせてみます。ありがとうございました。

ところで本来の目的に立ち返ると,疑問点は「ペアワイズ削除で分析を行う際,分散分析表の平方和を求める場合には,欠損ケースをどのように扱ったらよいか」ということなのですが,やはり通常は,リストワイズで除去して平方和を求めるのでしょうか?

ス テップワイズで変数選択を行うと,ステップごとに回帰式の変数が変化するので,取り込まれた変数内での欠損ケースも変わります。欠損をペアワイズ削除する 場合,平方和算出の対象となるケースもステップごとに変化させる(取り込まれた変数のみで欠損ケースをリストワイズ削除する)のでしょうか?

本当はリストワイズでサクッと削除してしまえればいいのですが,全ケース数が少ないのでそういうわけにもいかず,なんとも悩ましいところです。

     [このページのトップへ]


7404. Re^5: ペアワイズ削除時の分散分析表 マスオ  2005/08/06 (土) 01:33
理論は分かりませんが,ちょうど0.9倍なので,各ケースに9/10の重みをかけたときの平方和でしょう.欠側値の分自由度を減らしたので,それにあわせて平方和を調整したということだと思います.

> 欠損をペアワイズ削除する場合,平方和算出の対象となるケースもステップごとに変化させる(取り込まれた変数のみで欠損ケースをリストワイズ削除する)のでしょうか?

ペアワイズ削除のときは,あらかじめ相関行列をペアワイズに作って,それを解いていくのだったと思います.ので,変数の出し入れで欠損ありなしの影響は受けないと理解していますが,ソフトによってその辺のアルゴリズムは異なることがあるかもしれません.

     [このページのトップへ]


7421. Re^6: ペアワイズ削除時の分散分析表 とみた  2005/08/08 (月) 19:37
> 理論は分かりませんが,ちょうど0.9倍なので,各ケースに9/10の重みをかけたときの平方和でしょう.欠側値の分自由度を減らしたので,それにあわせて平方和を調整したということだと思います.

先の10ケースではなく,全ケースを対象にして同様に合計の平方和を計算してみたところ,STATISTICAの結果と一致しました!

ただ,回帰式に取り込まれた変数に欠損がある場合について回帰や残差の平方和を計算してみると,重みを付けても一致しませんでした。平方和をとる時に欠損ケースを除去するので,重みの付け方が変わるのでしょうかねぇ。


そ れはともかく,7388で青木先生が書かれたように「選ばれた変数だけで再分析を行う」という方法に作業方針を変更することにしました。この方法ですと, リストワイズ除去でもなんとかケース数が確保できそうです(それでも少ないですが)。時間ができたら,また上の問題を追及したいと思います。

お二方,ご助言ありがとうございました。

     [このページのトップへ]


7405. Re^6: ペアワイズ削除時の分散分析表 青木繁伸  2005/08/06 (土) 09:35
> ペアワイズ削除のときは,あらかじめ相関行列をペアワイズに作って,それを解いていくのだったと思います.ので,変数の出し入れで欠損ありなしの影響は受けないと理解していますが,ソフトによってその辺のアルゴリズムは異なることがあるかもしれません.

SPSS などでは,リストワイズとペアワイズの欠損値処理を指定できます。

ただペアワイズの場合には相関係数行列が非負定値になることが保証されないため,問題が生じることがありますね。

     [このページのトップへ]


7388. Re^5: ペアワイズ削除時の分散分析表 青木繁伸  2005/08/05 (金) 18:48
> ところで本来の目的に立ち返ると,疑問点は「ペアワイズ削除で分析を行う際,分散分析表の平方和を求める場合には,欠損ケースをどのように扱ったらよいか」ということなのですが,やはり通常は,リストワイズで除去して平方和を求めるのでしょうか?

ステップワイズ変数選択は,「分析に使用する」と指定した変数のどれかが欠損値を持つケースをリストワイズ除去します。結果的には全ての変数が残るわけではないので,残らなかった変数にだけ欠損値を持つケースも除去されてしまっています。
その救済策(是正策)は,選ばれた変数だけを指定して再分析を行う(ステップワイズなしで)ということでしょう。

なお,変数の個数が少ないなら,総当たり法をやるのが妥当ですね。

     [このページのトップへ]


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