regresion para lineal limites intervalos intervalo confianza coeficiente r lme4 random-effects mixed-models

para - intervalos de confianza en regresion



¿Cómo obtener los coeficientes y sus intervalos de confianza en modelos de efectos mixtos? (5)

En los modelos lm y glm , uso las funciones confint y confint para lograr el objetivo:

m = lm(resp ~ 0 + var1 + var1:var2) # var1 categorical, var2 continuous coef(m) confint(m)

Ahora agregué efectos aleatorios al modelo, usé modelos de efectos mixtos usando la función lmer del paquete lme4. Pero entonces, ¡las funciones confint y confint ya no funcionan para mí!

> mix1 = lmer(resp ~ 0 + var1 + var1:var2 + (1|var3)) # var1, var3 categorical, var2 continuous > coef(mix1) Error in coef(mix1) : unable to align random and fixed effects > confint(mix1) Error: $ operator not defined for this S4 class

Intenté buscar en Google y usar documentos pero sin resultado. Por favor, apúntame en la dirección correcta.

EDITAR: También estaba pensando si esta pregunta se ajusta más a https://stats.stackexchange.com/ pero lo considero más técnico que estadístico, por lo que concluí que encaja mejor aquí (SO) ... ¿qué piensa?


Hay dos nuevos paquetes, lmerTest y lsmeans , que pueden calcular los límites de confianza del 95% para la lmer de lmer y glmer . Tal vez usted puede mirar en esos? Y coefplot2 , creo que también puede hacerlo (aunque como Ben señala a continuación, de una manera no tan sofisticada, a partir de los errores estándar en las estadísticas de Wald, a diferencia de las aproximaciones de df de Kenward-Roger y / o Satterthwaite utilizadas en lmerTest y lsmeans ) ... Es una lástima que todavía no haya facilidades de trazado incorporadas en el paquete lsmeans (como hay en los effects() paquete effects() , que por cierto también devuelve límites de confianza del 95% en objetos lmer y glmer , pero lo hace glmer montar un modelo sin ningún de los factores aleatorios, que evidentemente no es correcto).


Le sugiero que use buen viejo lme (en el paquete nlme). Tiene confinamiento, y si necesita confinamiento de contrastes, hay una serie de opciones (estimable en gmodels, contraste en contrastes, glht en multcomp).

Por qué los valores de p y el valor de confinamiento están ausentes en lmer: consulte http://finzi.psych.upenn.edu/R/Rhelp02a/archive/76742.html .


No estoy seguro de cuándo se agregó, pero ahora confint () se implementa en lme4. Por ejemplo, el siguiente ejemplo funciona:

library(lme4) m = lmer(Reaction ~ Days + (Days | Subject), sleepstudy) confint(m)


Para encontrar el coeficiente, simplemente puede usar la función de resumen de lme4

m = lm(resp ~ 0 + var1 + var1:var2) # var1 categorical, var2 continuous m_summary <- summary(m)

tener todos los coeficientes:

m_summary$coefficient

Si desea el intervalo de confianza, multiplique el error estándar por 1.96:

CI <- m_summary$coefficient[,"Std. Error"]*1.96 print(CI)


Suponiendo una aproximación normal para los efectos fijos (que también habría hecho la constricción), podemos obtener intervalos de confianza del 95% mediante

estimación + 1.96 * error estándar.

Lo siguiente no se aplica a los componentes de varianza / efectos aleatorios.

library("lme4") mylm <- lmer(Reaction ~ Days + (Days|Subject), data =sleepstudy) # standard error of coefficient days_se <- sqrt(diag(vcov(mylm)))[2] # estimated coefficient days_coef <- fixef(mylm)[2] upperCI <- days_coef + 1.96*days_se lowerCI <- days_coef - 1.96*days_se