22 votos

¿Cómo se comprueba la significación estadística de una variable categórica en una regresión lineal?

Si en una regresión lineal tengo una variable categórica... ¿cómo puedo saber la significación estadística de la variable categórica?

Digamos que el factor $X_1$ tiene 10 niveles... habrá 10 valores t diferentes resultantes, bajo el paraguas de una variable factorial $X_1$ ...

¿Me parece que la significación estadística se comprueba para cada nivel de la variable factorial? ¿No?

@Macro: Siguiendo tu sugerencia, he construido el siguiente ejemplo:

Parece que x3 es útil y debe incluirse en el modelo, a partir de la siguiente comparación de modelos.

Pero en realidad eso está mal...

    n=100    
    x1=1:n
    x2=(1:n)^2 
    x3=rnorm(n)
    ee=rnorm(n)
    y=3*x1-2*x2+x3+3+ee
    lm1=lm(y~x1+x2+x3)
    summary(lm1)

    lm2=lm(y~x1+x2) 
    summary(lm2)

    anova(lm1, lm2)

    > anova(lm1, lm2)
    Analysis of Variance Table

    Model 1: y ~ x1 + x2 + x3
    Model 2: y ~ x1 + x2
      Res.Df     RSS Df Sum of Sq      F    Pr(>F)    
    1     96  82.782                                  
    2     97 146.773 -1    -63.99 74.207 1.401e-13 ***
    ---
    Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

1 votos

@Luna, ¿por qué está mal? Parece que has utilizado x3 para generar el y s, por lo que debe incluirse en el modelo y el $p$ -valor está de acuerdo con esa conclusión.

0 votos

@Seth - tienes razón. Sólo estaba dando un ejemplo de juguete de la utilización de anova en general en la comparación de modelos. Así que no está relacionado con mi pregunta original.

0 votos

@Macro - tienes razón. Ahora veo el punto. Gracias.

37voto

Niall Puntos 51

Tiene razón en que esos $p$ -Los valores sólo le indican si cada nivel es significativamente diferente de la media del nivel de referencia. Por lo tanto, sólo informan sobre la por parejas diferencias entre los niveles. Probar si el predictor categórico, en su conjunto, es significativo equivale a probar si hay alguna heterogeneidad en las medias de los niveles del predictor. Cuando no hay otros predictores en el modelo, se trata de una prueba clásica ANOVA problema.

Cuando hay otros predictores en el modelo, tiene dos opciones para comprobar la significación de un predictor categórico:

(1) El prueba de razón de verosimilitud: Suponga que tiene un resultado $Y_i$ , predictores cuantitativos $X_{i1}, ..., X_{ip}$ y el predictor categórico $C_i$ con $k$ niveles. El modelo sin el predictor categórico es

$$ Y_i = \beta_0 + \beta_1 X_{i1} + ... + \beta_p X_{ip} + \varepsilon_i $$

En R se puede ajustar este modelo con el lm() y extraer la probabilidad del registro con el comando logLik de mando. Llama a esto log-likelihood $L_0$ . A continuación, puede ajustar el modelo con el predictor categórico:

$$ Y_i = \beta_0 + \beta_1 X_{i1} + ... + \beta_p X_{ip} + \sum_{j=1}^{k-1} \alpha_j B_j + \varepsilon_i $$

donde $B_j$ es una variable ficticia que es $1$ si $D_i = j$ y $0$ de lo contrario. El $k$ es el nivel de referencia, por lo que sólo hay $k-1$ términos en la suma. R hará automáticamente esta codificación ficticia por usted si pasa la variable categórica a lm() . Se puede ajustar este modelo de forma similar y extraer la log-verosimilitud como en el caso anterior. Llamemos a esta log-verosimilitud $L_1$ . Entonces, bajo la hipótesis nula de que $D_i$ no tiene ningún efecto,

$$ \lambda = 2 \left( L_1 - L_0 \right ) $$

tiene un $\chi^2$ distribución con $k-1$ grados de libertad. Así, se puede calcular el $p$ -valor utilizando 1-pchisq(2*(L1-L0),df=k-1) en R para comprobar la significación.

(2) $F$ -prueba: Sin entrar en los detalles (que son similares a los de la TRL, salvo que se utilizan sumas de cuadrados en lugar de logaritmos de probabilidad), explicaré cómo hacerlo en R . Si se ajusta el modelo "completo" (es decir, el modelo con todos los predictores, incluido el categórico) en R utilizando el lm() (llame a este g1 ) y el modelo sin el predictor categórico (llamado g0 ), entonces el anova(g1,g0) también pondrá a prueba esta hipótesis para usted.

Nota: Los dos enfoques que he mencionado aquí requieren la normalidad de los errores. Además, la prueba de razón de verosimilitud es una herramienta muy general que se utiliza para las comparaciones anidadas, razón por la que la menciono aquí (y por la que se me ocurre primero), aunque la $F$ -es más familiar en la comparación de modelos de regresión lineal.

0 votos

Muchas gracias Macro. He descubierto que mis datos son muy poco normales. El gráfico QQ es el siguiente: la curva está toda por debajo de la línea recta de 45 grados. La curva es tangente a esa recta. Y la curva se parece a la curva de f(x)=-x^2 (en forma). ¿A qué tipo de problema me enfrento? ¿Y cómo puedo solucionarlo? Gracias.

1 votos

@Luna, ¿Sus datos son altamente no normales o los residuos son altamente no normales? Además, no creo que sea posible que todo el conjunto de puntos esté bajo la línea de 45 grados.

0 votos

Oh, en realidad tienes razón... Acabo de echar un vistazo más a la trama QQ. No es todo el conjunto de puntos que está bajo la línea de 45 grados. Es la curva con la forma de f(x)=-x^2 es "tangente" a la línea de 45 grados. Con "tangente" debería haber querido decir que esos puntos alrededor del punto "tangente" están en realidad por encima de la línea de 45 grados, aunque muy ligeramente. Por lo tanto, visualmente hablando, la mayoría de los datos (~98%) están por debajo de la línea de 45 grados... ¿qué debo hacer primero para solucionar este problema antes de hacer la comparación de modelos? Gracias.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X