¿Por qué cambia el modelo cuando se usa relevel?

8

Cuando calculo modelos de regresión con R, utilizo regularmente la función de relevel para que mi modelo también me dé resultados para el otro nivel. Noté que a veces, pero no con frecuencia, esto cambió el modelo en el sentido de que los niveles de otros factores que eran significativos antes del relanzamiento ya no lo son. ¿Es esto inherente a la revelación o excepcional y quizás debido a algún problema con mis datos? ¿Muestra que mis datos probablemente no cumplen con uno de los requisitos previos de los modelos lineales?

En relación con eso, ¿está bien si utilizo reenviar, recalcular mi modelo y luego informar valores significativos de ambos modelos en mi artículo? Si la significación difiere entre los dos modelos para un determinado factor, supongo que debería elegir uno que sea menos optimista.

Supongo que mi pregunta revela que no sé lo suficiente sobre mí para comprender la necesidad de un nivel base. Pensé que lo entendía bastante bien;) De alguna manera, ninguna de las presentaciones que leí explicaba ese punto, o era demasiado tonto para comprenderlo. Entonces, si alguien pudiera dirigirme a un sitio donde se explicara el punto de tener niveles base en lm o explicarlo ellos mismos, ¡eso también sería genial!

Editar: Aquí hay un ejemplo mínimo:

library(datasets)
sprays<-OrchardSprays
model<-lm(decrease~treatment+rowpos+colpos,data=sprays)
summary(model)

Parte del resumen dice

treatmentC    20.625      9.731   2.120  0.03866 *

Entonces, si el tratamiento == C esto tiene una influencia positiva significativa en la 'disminución'. Ahora relevo 'tratamiento' a B para averiguar qué influencia tiene el tratamiento == A:

sprays$treatment<-relevel(sprays$treatment,"B")
summary(model)

Y ahora el tratamiento == C no es significativo en este nuevo modelo:

treatmentC    17.625      9.731   1.811  0.07567 .

Perdón por publicar en el lugar equivocado! ¿Puedo mover mi pregunta a stats statexchange o debería abrir una nueva allí?

robert
fuente
2
Bienvenido a SO. ¿Crees que puedes hacer un pequeño ejemplo reproducible que ilustre esto?
Andrie
44
Parece que en realidad no sabes lo que está ajustando el modelo y cómo interpretar los parámetros en tu modelo. Esto probablemente sea más apropiado para el sitio de estadísticas stackexchange.
Dason
2
Los dos comentarios anteriores están justo en el blanco. Algo tan simple como d <- data.frame(y=runif(300),f=factor(rep(LETTERS[1:3],each=100)); lm(y~f,data=d)le dará un comienzo, aunque, por supuesto, no habrá cambios significativos en ese caso (aunque las estimaciones de los parámetros y los valores p ciertamente cambiarán cuando vuelva a nivelar).
Ben Bolker
Tal vez quiera ver las páginas 74-75 de este libro springer.com/economics/econometrics/book/978-0-387-77316-2 . Este es claramente un problema econométrico con respecto a las variables ficticias. Cambiar su línea de base no cambia el valor esperado de su estimación, pero cambia la estimación del parámetro. Cualquier libro de econometría básica lo ayudará en este tema.
2
... Esto realmente no es un problema de "econometría" tanto como es un problema de parametrización del modelo que es un problema en cualquier campo de la estadística.
Dason

Respuestas:

7

Suponga que el factor conditionstiene niveles A,B,Cy usted regresa su variable de respuesta yen condiciones que utilizan mod <- lm(y ~ conditions). Ahora summary(mod)devuelve la media del nivel de referencia de conditions(digamos A) y la diferencia de medias entre las condiciones By Ay la diferencia entre las condiciones Cy A(reportado respectivamente (Intercept), conditions:By conditions:C). Si usted conditions <- relevel(conditions, ref = 'B')y vuelve a reunir el modelo lineal, ahora obtendrá la media de B, la diferencia entre Ay B, y la diferencia entre CyA. Naturalmente, los valores p pueden cambiar. No significa que haya un problema con sus datos. No significa que sus datos necesariamente fallen una suposición del modelo lineal. El ajuste es el mismo y simplemente ha cambiado la información que se imprime porque ha cambiado el nivel de referencia y está utilizando contrastes de tratamiento. Puede obtener las mismas pruebas de hipótesis lineales utilizando el original mod.

En cuanto a qué informar, en muchos campos, es habitual informar si hubo un efecto estadísticamente significativo de conditions(usando la salida de anova(mod)) e informar a la salida de regresión completa en una tabla (usando los niveles de referencia que desee ) Las normas sobre cómo y si informar las pruebas de Avs. B(por ejemplo) varían según el campo. Mire de cerca los buenos documentos en su campo.

bloqueado
fuente
¡Gracias, eso responde a mi pregunta! Solo para aclarar: Usted dice que es habitual informar si los factores fueron significativos (salida de anova) y la salida de regresión completa, pero las normas para las pruebas pueden variar. Pero la salida de regresión completa (con resumen) incluye principalmente estas pruebas (además de la intercepción), ¿no?
Sí, pero eso no significa necesariamente que deba denunciarlos. Las pruebas de significación de la intercepción en particular son a menudo sin sentido ...
Ben Bolker
Estoy confundido ... Si el resumen los informa, ¿supongo que deben ser útiles para algo? Además, la razón principal por la que estoy calculando un modelo es porque quiero averiguar qué nivel se puede decir que tiene qué tipo de influencia con cierto grado de certeza. Entonces, si tienden a ser "sin sentido", hay pocas razones para que haga esto. ¿O recomendarías otro método para hacer esto?