7 votos

La evaluación de la linealidad en un modelo de efectos mixtos

He de desarrollo de los datos recogidos a través de varios grados (1-6), en el que cada niño en cada grado se mide muchas veces. Me gustaría ser capaz de determinar si existen o no lineal o no-lineal de las tendencias en la variable de respuesta en los diferentes grados. ¿Tiene sentido para ejecutar una primera lmer el tratamiento de grado como en la continua, obtener los residuos, a continuación, ejecute una segunda lmer el tratamiento de grado, como un factor? Que es:

fit1 = lmer(
   formula = response ~ (1|child)+grade_as_numeric
   , data = my_data
   , family = gaussian
)
my_data$resid = residuals(fit1)
fit2 = lmer(
   formula = resid ~ (1|child)+grade_as_factor
   , data = my_data
   , family = gaussian
)

Como yo lo entiendo, fit1 me va a decir si hay alguna tendencia lineal en los datos, mientras que fit2 me dirá si hay algún no-lineal de las tendencias en los datos, además de las tendencias lineales obtenidos en fit1.

Si esto es sensato, ¿cómo podría aplicar a un segundo binomio variable de respuesta, dado que los residuos de un modelo binomial no 0/1?

5voto

Magnus Lindhe Puntos 2391

No es realmente una respuesta, pero yo estaba interesado en probarlo... Supongo que el patrón no es fácilmente reconocible sólo por el trazado? Por lo que he intentado hacer algunos datos que podrían comportarse de esta manera:

set.seed(69)
id<- rep(1:20, each=6)
x<-rep(1:6, 20)
y<-jitter(x+id/5, factor=5) + jitter(sin(x), factor=5)
df1<-data.frame(id, x, y)

plot(y~x)
xyplot(y~x|id, data=df1, type="l")

Para mí, si yo tuviera este tipo de datos sin saber cómo se hizo, creo que tendría problemas para escoger la superpuesto a la señal y, quizás, supongo que era lineal. Resid vs equipado de lmer1 (abajo) no muestra mucho, pero la resid vs x es más sugerente.

lmer1<-lmer(y~x+(1|id), data=df1, REML=F)
xyplot(resid(lmer1)~fitted(lmer1), type=c("p", "smooth"))
xyplot(resid(lmer1)~x, type=c("p", "smooth"))

Utilizando su sugerencia de llevar a cabo un análisis de VARIANZA de los residuos da un efecto significativo, indicando que tal vez algún tipo de diferencia sistemática:

lmer2<-lmer(resid(lmer1)~factor(x)+(1|id), data=df1, REML=F) #sd attributed to id is 0
anova(lmer2)

Así que tal vez este método puede ser útil para determinar si es necesario incluir los términos de orden superior mediante el uso de, tal vez, el aumento de la orden de los polinomios:

lmer3.1 <- lmer(y~poly(x,2)+(1|id), data=df1, REML=F)
lmer3.2 <- lmer(y~poly(x,3)+(1|id), data=df1, REML=F)
lmer3.3 <- lmer(y~poly(x,4)+(1|id), data=df1, REML=F)
anova(lmer1, lmer3.1, lmer3.2, lmer3.3)

En este método, el cúbicos función 'gana' y podría ser útil una aproximación de lo que está pasando y llega muy cerca de la modelo generado:

lmer4<-lmer(y~x+sin(x)+(1|id), data=df1)
anova(lmer3.2, lmer4)

Realmente no sé si esto ayuda o no, pero espero que esto los datos simulados espejos de su problema y alguien puede usar esto para dar una información más exacta de la respuesta a su pregunta. No estoy seguro acerca de la binomial parte de su pregunta.

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