¿Qué son los 'coeficientes con alias'?


24

Mientras construyo un modelo de regresión en R ( lm), frecuentemente recibo este mensaje

"there are aliased coefficients in the model"

¿Qué significa exactamente?

Además, debido a esto predict()también está dando una advertencia.

Aunque es solo una advertencia, quiero saber cómo podemos detectar / eliminar los coeficientes con alias antes de construir un modelo.

Además, ¿cuáles son las probables consecuencias de descuidar esta advertencia?

Respuestas:


32

Sospecho que esto no es un error lm, sino más bien vif(del paquete car). Si es así, creo que te has topado con una multicolinealidad perfecta . Por ejemplo

x1 <- rnorm( 100 )
x2 <- 2 * x1
y <- rnorm( 100 )
vif( lm( y ~ x1 + x2 ) )

produce tu error

En este contexto, "alias" se refiere a las variables que dependen linealmente de otras (es decir, causan una multicolinealidad perfecta).

El primer paso hacia la solución es identificar qué variable (s) son las culpables. correr

alias( lm( y ~ x1 + x2 ) )

para ver un ejemplo


Gracias. ¿Es 'multicolinealidad' lo mismo que tener 'coeficientes con alias'?
Mohit Verma

1
@MohitVerma: En esta terminología, '' alias '' se refiere a las variables que son linealmente dependientes (es decir, causan una multicolinealidad perfecta). Ver stat.ethz.ch/R-manual/R-patched/library/stats/html/alias.html . Actualizo la respuesta con esto.
Tamas Ferenci

3

Esto a menudo aparece cuando tiene singularidades en su X'Xmatriz de regresión (valores de NA en el resumen de la salida de regresión).

Base R lm()permite valores singulares / multicolinealidad perfecta como el valor predeterminado singular.ok = TRUE. Otros paquetes / funciones son más conservadores.

Por ejemplo, para la linearHypothesis()función en el carpaquete, el valor predeterminado es singular.ok = FALSE. Si tiene una multicolinealidad perfecta en su regresión, linearHypothesis()devolverá un error "hay coeficientes con alias en el modelo". Para lidiar con este error, establezca singular.ok = TRUE. Sin embargo, tenga cuidado, ya que esto puede enmascarar la multicolinealidad perfecta en su regresión.


0

quizás demasiado bueno saber para algunos: también recibí este error cuando agregué dummies a una regresión. R omite automáticamente un ficticio, pero esto provoca un error en la prueba vif. Por lo tanto, una solución, para algunos, podría ser eliminar un maniquí manualmente.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.