2

モデルを単一のパーセンテージ (従属) 変数: スコアに適合させるために選択しようとしている 9 つの連続独立変数を含むデータセットがあります。

残念ながら、いくつかの変数の間に深刻な共線性があることはわかっています。

変数選択のために R で stepAIC 関数を使用してみましたが、奇妙なことに、その方法は変数が方程式にリストされている順序に敏感なようです...

これが私のRコードです(b / cはパーセンテージデータです。スコアにはロジット変換を使用しています):

library(MASS)
library(car)

data.tst = read.table("data.txt",header=T)
data.lm = lm(logit(Score) ~ Var1 + Var2 + Var3 + Var4 + Var5 + Var6 + Var7 + Var8 + Var9, data = data.tst)

step = stepAIC(data.lm, direction="both")
summary(step)

何らかの理由で、式の先頭にリストされている変数が stepAIC 関数によって選択されることになり、結果は、たとえば Var9 を最初に (チルダに続いて) リストすることで操作できることがわかりました。

ここでモデルを適合させるより効果的な (そしてあまり議論の余地のない) 方法は何ですか? 私は実際に線形回帰の使用に固執しているわけではありません。私が望む唯一のことは、9 つ​​の変数のどれが本当に Score 変数の変動を引き起こしているかを理解できるようにすることです。できれば、これは、これら 9 つの変数の共線性の可能性が高いことを考慮に入れる方法です。

難しい質問だとは存じますが、お時間を割いてご覧いただき、誠にありがとうございます...

最高、ジュリー

4

2 に答える 2

0

ベイジアンモデル平均化(BMSRのパッケージを使用)に行き着きました。

于 2012-04-07T20:41:28.997 に答える
0

主成分分析 (stats::prcomp) が必要になる場合があります。

Avril Coghlan によるドキュメント「A Little Book of R For Multivariate Analysis」のセクション 2.7 を参照してください。彼は、さまざまなワイン生産者についてダウンロードしたデータを使用した良い例を挙げています。

于 2012-03-31T19:18:35.447 に答える