Tengo una pregunta similar a este uno, pero quería seguir y preguntar si toda la variable es ahora insignificante? Tengo un factor con 3 niveles. Al hacer la simplificación del modelo, mostró que dos de los niveles eran significativos y uno no lo era (p = 0,5). ¿Puedo seguir considerando que los otros dos niveles tienen un efecto significativo en mi variable de respuesta, o toda la variable es ahora no significativa? (Supongo que el nivel no significativo lo era porque el tamaño de la muestra para ese nivel era sólo de unos 3) ¡Gracias!
Respuestas
¿Demasiados anuncios?Cuando se tiene una variable factorial en un modelo de regresión, es decir, una variable categórica con múltiples niveles, esa variable debe tratarse como un todo. Por lo tanto, debería ignorar las pruebas t para cada nivel por separado y probar la variable como un todo. En un modelo de regresión lineal, esto sería una prueba F. Estas pruebas de múltiples factores se denominan a menudo pruebas por partes , ver ¿Qué son las pruebas a trozos? .
La mayoría de ellos se explican en el post que enlazaste. El post que he enlazado anteriormente contiene ejemplos.
Como ha señalado en un comentario el usuario Frank Harrell, una razón específica para ignorar las pruebas de 1 df es que dependen de la codificación categórica utilizada. Es decir, prueban contrastes específicos, que bien podrían carecer de interés para usted, especialmente si sólo ha utilizado alguna codificación por defecto. Véase mi respuesta en variable independiente categórica con tres niveles y regresión logística binaria
Veamos un ejemplo.
Tenemos $50$ perros, $50$ gatos, y $50$ yaks. En alguna variable de interés, $Y$ Los perros siguen un $N(0, 1)$ distribución, los gatos siguen una $N(1, 1)$ distribución, y los yaks siguen una $N(1, 1)$ distribución.
Así, los yaks y los gatos tienen la misma media, pero los perros tienen una media diferente. Cuando se pregunta si las medias de las tres especies son iguales, la respuesta es que definitivamente no lo son. Hagamos el ANOVA.
set.seed(2021)
N <- 50
y_dog <- rnorm(N, 0, 1)
y_cat <- rnorm(N, 1, 1)
y_yak <- rnorm(N, 1, 1)
y <- c(y_dog, y_cat, y_yak)
species <- c(rep("Dog", N), rep("Cat", N), rep("Yak", N))
L <- lm(y ~ species)
summary(L)
Call:
lm(formula = y ~ species)
Residuals:
Min 1Q Median 3Q Max
-2.59040 -0.66448 0.08034 0.64460 2.56390
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.6352 0.1502 4.230 4.1e-05 ***
speciesDog -0.6193 0.2124 -2.916 0.0041 **
speciesYak 0.2545 0.2124 1.199 0.2326
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.062 on 147 degrees of freedom
Multiple R-squared: 0.1086, Adjusted R-squared: 0.0965
F-statistic: 8.957 on 2 and 147 DF, p-value: 0.0002135
El resultado de esto es que los Yaks no tienen un $(\alpha = 0.05)$ media de los gatos, y sabemos que los yaks y los gatos tienen la misma media. Sin embargo, el ANOVA rechaza rotundamente la idea de que las tres especies tengan la misma media, lo cual sabemos que es falso.
Por lo tanto, la variable especie es significativa.
APÉNDICE
El resultado más extraño es cuando este tipo de "prueba de trozos" da valores p insignificantes para cada variable individualmente, pero un valor p pequeño para la prueba de conjunto, demostrado a continuación.
library(MASS)
set.seed(2021)
N <- 10
X <- MASS::mvrnorm(N, c(0, 0), matrix(c(1, 0.95, 0.95, 1), 2, 2))
y <- X[, 1] + X[, 2] + rnorm(N)
L <- lm(y ~ X[, 1] + X[, 2])
summary(L)
Call:
lm(formula = y ~ X[, 1] + X[, 2])
Residuals:
Min 1Q Median 3Q Max
-1.3416 -0.7162 0.0408 0.5220 1.5287
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.3595 0.3782 -0.951 0.373
X[, 1] 1.0035 1.4528 0.691 0.512
X[, 2] 1.0648 1.0932 0.974 0.362
Residual standard error: 1.105 on 7 degrees of freedom
Multiple R-squared: 0.7986, Adjusted R-squared: 0.741
F-statistic: 13.88 on 2 and 7 DF, p-value: 0.003668
Esto no es exactamente lo que has preguntado, pero no quiero que pienses que necesitas un parámetro en una prueba de trozos para tener un valor p significativo.