Ich habe einen Datensatz mit 9 kontinuierlichen unabhängigen Variablen. Ich versuche, unter diesen Variablen auszuwählen, um ein Modell an eine einzelne prozentuale (abhängige) Variable anzupassen Score
. Leider weiß ich, dass es ernsthafte Kollinearität zwischen mehreren Variablen geben wird.
Ich habe versucht, die stepAIC()
Funktion in R für die Variablenauswahl zu verwenden, aber diese Methode scheint seltsamerweise abhängig von der Reihenfolge zu sein, in der die Variablen in der Gleichung aufgeführt sind ...
Hier ist mein R-Code (da es sich um Prozentdaten handelt, verwende ich eine Logit-Transformation für Score):
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)
Aus irgendeinem Grund stellte ich fest, dass die am Anfang der Gleichung aufgelisteten Variablen von der stepAIC()
Funktion ausgewählt werden und das Ergebnis durch Auflisten, z. B. Var9
zuerst (nach der Tilde) , manipuliert werden kann .
Was ist eine effektivere (und weniger kontroverse) Möglichkeit, hier ein Modell anzupassen? Eigentlich bin ich nicht auf lineare Regression fixiert: Ich möchte nur verstehen können, welche der 9 Variablen die Variation in der Score
Variablen wirklich beeinflusst . Dies wäre vorzugsweise eine Methode, die das starke Kollinearitätspotential dieser 9 Variablen berücksichtigt.
Score
Variablen wirklich antreibt ", was der Satz ist, auf den ich mich möglicherweise zu sehr konzentriert habe. Bei starker Kollinearität wird das Lasso dabei nicht helfen, zumindest bei einer strengeren Interpretation der Bemerkung des OP.