Eu tenho um conjunto de dados com 9 variáveis independentes contínuas. Estou tentando selecionar entre essas variáveis para ajustar um modelo a uma única variável percentual (dependente) Score
. Infelizmente, eu sei que haverá uma colinearidade séria entre várias das variáveis.
Eu tentei usar a stepAIC()
função em R para seleção de variáveis, mas esse método, estranhamente, parece sensível à ordem em que as variáveis estão listadas na equação ...
Aqui está o meu código R (porque são dados percentuais, eu uso uma transformação de logit para 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)
Por alguma razão, descobri que as variáveis listadas no início da equação acabam sendo selecionadas pela stepAIC()
função, e o resultado pode ser manipulado pela listagem, por exemplo, Var9
primeiro (após o til).
Qual é a maneira mais eficaz (e menos controversa) de ajustar um modelo aqui? Na verdade, não estou decidido a usar a regressão linear: a única coisa que quero é ser capaz de entender qual das 9 variáveis está realmente impulsionando a variação na Score
variável. De preferência, esse seria um método que leva em consideração o forte potencial de colinearidade nessas 9 variáveis.
Score
variável", que é a frase na qual eu talvez tenha me concentrado demais. Na presença de forte colinearidade, o laço não ajudará nisso, pelo menos em interpretações mais estritas da observação do OP.