Lors de la construction d'un modèle de régression dans R ( lm
), je reçois fréquemment ce message
"there are aliased coefficients in the model"
Qu'est-ce que ça veut dire exactement?
En outre, à cause de cela, predict()
donne également un avertissement.
Bien que ce ne soit qu'un avertissement, je veux savoir comment détecter / supprimer des coefficients alias avant de construire un modèle.
Aussi, quelles sont les conséquences probables de la négligence de cet avertissement?
la source
Cela se produit souvent lorsque vous avez des singularités dans votre
X'X
matrice de régression (valeurs NA dans le résumé de la sortie de régression).La base R
lm()
permet des valeurs singulières / une multicolinéarité parfaite par défautsingular.ok = TRUE
. D'autres packages / fonctions sont plus conservateurs.Par exemple, pour la
linearHypothesis()
fonction dans lecar
package, la valeur par défaut estsingular.ok = FALSE
. Si vous avez une parfaite multicolinéarité dans votre régression,linearHypothesis()
retournera une erreur "il y a des coefficients alias dans le modèle". Pour gérer cette erreur, définissezsingular.ok = TRUE
. Soyez prudent, car cela peut masquer une parfaite multicolinéarité dans votre régression.la source
peut-être trop bon à savoir pour certains: j'ai également cette erreur lorsque j'ai ajouté des variables muettes à une régression. R omet automatiquement un mannequin, mais cela provoque une erreur dans le test vif. donc, pour certains, une solution pourrait être de supprimer un mannequin manuellement.
la source