Tengo curiosidad acerca de cómo el paquete lmerTest en R, específicamente la función "rand", maneja las pruebas de efectos aleatorios. Considere el ejemplo del pdf lmerTest en CRAN que usa el conjunto de datos "zanahorias" incorporado:
#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 variaciones aleatorias (la intersección y "sens2"), ambas anidadas en "Consumidor", y la covarianza entre la intersección y "sens2". A continuación se muestra la salida (no proporcionada en el pdf) para los componentes aleatorios de la ejecución de lmer:
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 que se espera dada la especificación del modelo. La salida de la función rand sigue:
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 la intersección. La prueba para la intercepción aleatoria no está incluida. Calculé otro modelo con solo la intersecció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
Aquí se proporciona la prueba de la varianza aleatoria asociada con la intercepción. Entonces, ¿alguien sabe lo que está probando la prueba de los componentes de varianza aleatoria del primer modelo? ¿Hay alguna forma que no pueda ver en la documentación para probar los tres componentes aleatorios? Debo mencionar que la página para la prueba de rand en inside-R.org tiene la siguiente descripción confusa (que no veo en el pdf sobre 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 "Valores" lo tenga al revés y que solo se reporten efectos significativos? Ejecuté el procedimiento de "paso" y no estaba claro si los tres componentes de varianza aleatoria se consideraron en la ejecución.
Cualquier idea sobre el asunto es muy apreciada.
Joe
EDITAR: La trama se complica un poco. Se me ocurrió comprobar una estructura de covarianza "diagonal" (sin covarianza entre la intersección aleatoria y la pendiente) usando lo siguiente (basado en esta excelente publicación ):
m2 <- lmer(Preference ~ sens2+Homesize+(1|Consumer)+(0+sens2|Consumer), data=carrots)
La salida de lmer para las variaciones aleatorias, usando VarCorr, es la 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 aleatoria y la intercepción. La ejecución de la función "rand" desde lmerTest produce el siguiente resultado:
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
Por lo tanto, probará los dos componentes de varianza para este modelo. Pero la pregunta permanece con respecto al primer modelo con la covarianza aleatoria. ¿Qué es la prueba lmerTest?