Ao construir um modelo de regressão em R ( lm
), estou frequentemente recebendo esta mensagem
"there are aliased coefficients in the model"
O que exatamente isso significa?
Além disso, devido a isso predict()
também está dando um aviso.
Embora seja apenas um aviso, quero saber como podemos detectar / remover coeficientes de alias antes de criar um modelo.
Além disso, quais são as prováveis conseqüências de negligenciar esse aviso?
fonte
Isso geralmente ocorre quando você tem singularidades em sua
X'X
matriz de regressão (valores de NA no resumo do resultado da regressão).A base R
lm()
permite valores singulares / multicolinearidade perfeita como o padrãosingular.ok = TRUE
. Outros pacotes / funções são mais conservadores.Por exemplo, para a
linearHypothesis()
função nocar
pacote, o padrão ésingular.ok = FALSE
. Se você tiver multicolinearidade perfeita em sua regressão,linearHypothesis()
retornará um erro "existem coeficientes com alias no modelo". Para lidar com esse erro, definasingular.ok = TRUE
. Entretanto, tenha cuidado, pois isso pode mascarar a multicolinearidade perfeita em sua regressão.fonte
talvez seja bom saber para alguns: também recebi esse erro quando adicionei manequins a uma regressão. R omite automaticamente um manequim, mas isso causa um erro no teste vif. portanto, para alguns, uma solução pode estar removendo um manequim manualmente.
fonte