Я читав про обчислення значень у змішаних моделях і після прочитання відповідей на R-sig, інших публікацій на цьому форумі (я б зв’язав декілька, але мені не вистачає репутації) та кілька інших посилань, я розумію, що використовуючи Значення у контексті змішаних моделей є складним.
Однак я нещодавно натрапив на ці два документи нижче. Хоча ці методи виглядають багатообіцяючим (для мене), я не є статистиком, і мені було цікаво, чи хтось інший матиме уявлення про запропоновані ними методи та як вони порівнюватимуть з іншими запропонованими методами.
Накагава, Шинічі та Хольгер Шильцет. "Загальний і простий метод отримання R2 з узагальнених лінійних моделей змішаних ефектів". Методи екології та еволюції 4.2 (2013): 133-142.
Джонсон, Пол CD. "Розширення R2GLMM Nakagawa & Schielzeth до моделей випадкових схилів." Методи в екології та еволюції (2014).
Метод is може також бути реалізований за допомогою функції r.squaredGLMM в пакеті MuMIn, який дає наступний опис методу.
Для моделей зі змішаними ефектами можна класифікувати на два типи. Гранична являє собою дисперсію, пояснювану фіксованими факторами, і визначається як: Умовно інтерпретується як дисперсія, що пояснюється як фіксованими, так і випадковими факторами (тобто всією моделлю), і обчислюється за рівнянням: де - дисперсія компонентів фіксованого ефекту, і - сума всіх дисперсійних компонентів (групових, індивідуальних тощо),
- дисперсія, обумовлена адитивною дисперсією, а - дисперсія, характерна для розподілу.
У своєму аналізі я розглядаю поздовжні дані, і в першу чергу мене цікавить дисперсія, що пояснюється фіксованими ефектами в моделі
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