Tengo curiosidad por saber cómo el paquete lmerTest en R, específicamente la función "rand", maneja las pruebas de efectos aleatorios. Considere el ejemplo del lmerTest pdf en CRAN que utiliza el conjunto de datos incorporado de las "zanahorias":
#import lme4 package and lmerTest package
library(lmerTest)
#lmer model with correlation between intercept and slopes
#in the random part
m <- lmer(Preference ~ sens2+Homesize+(1+sens2|Consumer), data=carrots)
# table with p-values for the random effects
rand(m)
El modelo especifica dos varianzas aleatorias (el intercepto y "sens2"), ambas anidadas en "Consumer", y la covarianza entre el intercepto y "sens2". La salida (no proporcionada en el pdf) para los componentes aleatorios de la ejecución del lmer es la siguiente:
Random effects:
Groups Name Variance Std.Dev. Corr
Consumer (Intercept) 0.195168 0.44178
sens2 0.002779 0.05271 0.18
Residual 1.070441 1.03462
Number of obs: 1233, groups: Consumer, 103
Lo cual es de esperar dada la especificación del modelo. El resultado de la función rand es el siguiente:
Analysis of Random effects Table:
Chi.sq Chi.DF p.value
sens2:Consumer 6.99 2 0.03 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Dada la tabla de efectos aleatorios, creo que lmerTest está evaluando la pendiente aleatoria para "sens2", pero también podría ser la covarianza entre la pendiente y el intercepto. La prueba para el intercepto aleatorio no está incluida. Estimé otro modelo con sólo la intercepción aleatoria (sin pendiente aleatoria o covarianza), y obtuve lo siguiente de la declaración "rand":
Analysis of Random effects Table:
Chi.sq Chi.DF p.value
Consumer 79.6 1 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
La prueba de la varianza aleatoria asociada al intercepto se proporciona aquí. Entonces, ¿alguien sabe lo que la prueba de los componentes de la varianza aleatoria del primer modelo está probando? ¿Hay alguna forma que no pueda ver en la documentación para probar los tres componentes aleatorios? Debo mencionar la página para la prueba rand en inside-R.org tiene la siguiente descripción confusa (que no veo en el pdf en CRAN):
Values
Produces a data frame with tests for the random terms being non-significant.
Note
If the effect has random slopes, then first the correlations between itercept [sic] and slopes are checked for significance
¿Es posible que la descripción de los "Valores" esté al revés y que sólo se informen los efectos significativos? He ejecutado el procedimiento de "paso" y no estaba claro si los tres componentes de la varianza aleatoria se consideraron en la ejecución.
Se agradece cualquier idea al respecto.
Joe
EDIT: La trama se complica un poco. Se me ocurrió comprobar una estructura de covarianza "diagonal" (sin covarianza entre el intercepto aleatorio y la pendiente) utilizando lo siguiente (basado en este excelente post ):
m2 <- lmer(Preference ~ sens2+Homesize+(1|Consumer)+(0+sens2|Consumer), data=carrots)
El resultado de lmer para las varianzas aleatorias, utilizando VarCorr, es el siguiente:
Groups Name Std.Dev.
Consumer (Intercept) 0.441807
Consumer.1 sens2 0.052719
Residual 1.034618
Que omite correctamente la covarianza (correlación) entre la pendiente y el intercepto aleatorios. La ejecución de la función "rand" de lmerTest produce la siguiente salida:
Analysis of Random effects Table:
Chi.sq Chi.DF p.value
Consumer 84.4 1 <2e-16 ***
sens2:Consumer 6.3 1 0.01 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Así que probará los dos componentes de la varianza para este modelo. Pero la pregunta sigue siendo sobre el primer modelo con la covarianza aleatoria. ¿Qué prueba lmerTest?