Cómo extraer / calcular el apalancamiento y las distancias de Cook para modelos lineales de efectos mixtos

10

¿Alguien sabe cómo calcular (o extraer) el apalancamiento y las distancias de Cook para un merobjeto de clase (obtenido a través del lme4paquete)? Me gustaría trazar estos para un análisis de residuos.

Ángel roey
fuente

Respuestas:

13

Usted debe tener una mirada en el paquete R influence.ME. Le permite calcular medidas de datos influyentes para modelos de efectos mixtos generados por lme4.

Un modelo de ejemplo:

library(lme4)
model <- lmer(mpg ~ disp + (1 | cyl), mtcars)

La función influencees la base de todos los pasos adicionales:

library(influence.ME)
infl <- influence(model, obs = TRUE)

Calcule la distancia de Cook:

cooks.distance(infl)

Trazar la distancia del cocinero:

plot(infl, which = "cook")

ingrese la descripción de la imagen aquí

Sven Hohenstein
fuente
¡Gracias! Esto ciertamente ayuda. ¿Qué tal calcular el apalancamiento para un diagrama de distancia vs. apalancamiento de Cook?
Roey Angel
@RoeyAngel Supongo que esto no es posible con el influence.MEpaquete. Desafortunadamente, no tengo una solución para esta tarea.
Sven Hohenstein
¿No debería ser así infl <- influence(model, group = "cyl")porque especificaste el efecto aleatorio como (1|cyl)? No sé, no entiendo en absoluto, que acaba de instalar influencia ... pero yo realmente no sé cuándo usar obs = TRUEy cuándo usar group...
Curioso
Me gustaría agregar lo siguiente: si desea obtener el número de fila donde ocurren las distancias D de Cook - el mismo número que ocurre en el diagrama sin trazar, entonces puede usar la siguiente fórmula r sobre números de distancias D de Cook con un corte off value of eg 0.1cooksD_data<-as.data.frame(cooks.distance(ft1)) cooksD_data_select<-cooksd[cooksD_data>0.1,drop=FALSE,] cooksD_oultiers<-as.numeric(rownames(cooksD_data_select))]
Elias Estatistics
¿Es esto mejor que la hatvalues()función recomendada aquí ?
Curioso