Tôi đã đọc về cách tính giá trị trong các mô hình hỗn hợp và sau khi đọc Câu hỏi thường gặp về R-sig, các bài đăng khác trên diễn đàn này (tôi sẽ liên kết một vài nhưng tôi không có đủ danh tiếng) và một số tài liệu tham khảo khác tôi hiểu rằng sử dụng Giá trị trong bối cảnh các mô hình hỗn hợp là phức tạp.R 2
Tuy nhiên, gần đây tôi đã xem qua hai bài báo dưới đây. Mặc dù các phương pháp này có vẻ đầy triển vọng (với tôi) tôi không phải là một nhà thống kê, và vì vậy tôi tự hỏi liệu có ai khác có cái nhìn sâu sắc về các phương pháp mà họ đề xuất và cách họ so sánh với các phương pháp khác đã được đề xuất.
Nakagawa, Shinichi và Holger Schielzeth. "Một phương pháp chung và đơn giản để thu được R2 từ các mô hình hiệu ứng hỗn hợp tuyến tính tổng quát." Các phương pháp trong Sinh thái học và Tiến hóa 4.2 (2013): 133-142.
Johnson, Paul CD. "Mở rộng R2GLMM của Nakagawa & Schielzeth thành các mẫu dốc ngẫu nhiên." Các phương pháp trong Sinh thái học và Tiến hóa (2014).
Phương thức is cũng có thể được thực hiện bằng cách sử dụng hàm r.squaredGLMM trong gói MuMIn , đưa ra mô tả sau về phương thức.
Đối với các mô hình hiệu ứng hỗn hợp, có thể được phân loại thành hai loại. Marginal đại diện cho phương sai được giải thích bởi các yếu tố cố định và được định nghĩa là: có điều kiện được hiểu là phương sai được giải thích bởi cả hai yếu tố cố định và ngẫu nhiên (nghĩa là toàn bộ mô hình) và được tính theo phương trình: trong đó là phương sai của các thành phần hiệu ứng cố định và là tổng của tất cả các thành phần phương sai (nhóm, cá nhân, v.v.),R 2 R G L M M ( m ) 2 = σ 2 f R2RGLMM(c)2=(σ 2 f +Σ(σ 2 l ))
là phương sai do phân tán phụ gia và là phương sai phân bố cụ thể.
Trong phân tích của tôi, tôi đang xem xét dữ liệu theo chiều dọc và tôi chủ yếu quan tâm đến phương sai được giải thích bởi các hiệu ứng cố định trong mô hình
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