He estado leyendo sobre el cálculo valores de en modelos mixtos y después de leer las preguntas frecuentes de R-sig, otras publicaciones en este foro (vincularía algunas pero no tengo suficiente reputación) y varias otras referencias entiendo que usando valores en el contexto de modelos mixtos son complicados.R 2
Sin embargo, recientemente me he encontrado con estos dos documentos a continuación. Si bien estos métodos parecen prometedores (para mí), no soy un estadístico y, como tal, me preguntaba si alguien más tendría alguna idea sobre los métodos que proponen y cómo se compararían con otros métodos que se han propuesto.
Nakagawa, Shinichi y Holger Schielzeth. "Un método general y simple para obtener R2 a partir de modelos lineales generalizados de efectos mixtos". Methods in Ecology and Evolution 4.2 (2013): 133-142.
Johnson, Paul CD. "Extensión de R2GLMM de Nakagawa & Schielzeth a modelos de pendientes aleatorias". Métodos en ecología y evolución (2014).
El método is también se puede implementar utilizando la función r.squaredGLMM en el paquete MuMIn que proporciona la siguiente descripción del método.
Para los modelos de efectos mixtos, se puede clasificar en dos tipos. marginal representa la varianza explicada por factores fijos, y se define como: condicional se interpreta como la varianza explicada por factores fijos y aleatorios (es decir, todo el modelo), y se calcula según la ecuación: donde es la varianza de los componentes de efectos fijos, y es la suma de todos los componentes de la varianza (grupo, individual, etc.),R 2 R2RGLMM(c)2=(σ 2 f +∑(σ 2 l ))
σ 2 f ∑(σ 2 l )σ 2 l σ 2 des la varianza debida a la dispersión aditiva y es la varianza específica de la distribución.
En mi análisis, estoy mirando datos longitudinales y estoy principalmente interesado en la varianza explicada por los efectos fijos en el modelo
library(MuMIn)
library(lme4)
fm1 <- lmer(zglobcog ~ age_c + gender_R2 + ibphdtdep + iyeareducc + apoegeno + age_c*apoegeno + (age_c | pathid), data = dat, REML = FALSE, control = lmerControl(optimizer = "Nelder_Mead"))
# Jarret Byrnes (correlation between the fitted and the observed values)
r2.corr.mer <- function(m) {
lmfit <- lm(model.response(model.frame(m)) ~ fitted(m))
summary(lmfit)$r.squared
}
r2.corr.mer(fm1)
[1] 0.8857005
# Xu 2003
1-var(residuals(fm1))/(var(model.response(model.frame(fm1))))
[1] 0.8783479
# Nakagawa & Schielzeth's (2013)
r.squaredGLMM(fm1)
R2m R2c
0.1778225 0.8099395