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í?
fuente
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).Respuestas:
Suponga que el factor
conditions
tiene nivelesA,B,C
y usted regresa su variable de respuestay
en condiciones que utilizanmod <- lm(y ~ conditions)
. Ahorasummary(mod)
devuelve la media del nivel de referencia deconditions
(digamosA
) y la diferencia de medias entre las condicionesB
yA
y la diferencia entre las condicionesC
yA
(reportado respectivamente(Intercept)
,conditions:B
yconditions:C
). Si ustedconditions <- relevel(conditions, ref = 'B')
y vuelve a reunir el modelo lineal, ahora obtendrá la media deB
, la diferencia entreA
yB
, y la diferencia entreC
yA
. 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 originalmod
.En cuanto a qué informar, en muchos campos, es habitual informar si hubo un efecto estadísticamente significativo de
conditions
(usando la salida deanova(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 deA
vs.B
(por ejemplo) varían según el campo. Mire de cerca los buenos documentos en su campo.fuente