ผมได้อ่านเกี่ยวกับการคำนวณค่าในรูปแบบผสมและหลังจากที่ได้อ่านคำถามที่พบบ่อย R-sig โพสต์อื่น ๆ ในฟอรั่มนี้ (ฉันจะเชื่อมโยงไม่กี่ แต่ฉันไม่ได้มีชื่อเสียงพอ) และอีกหลายอ้างอิงอื่น ๆ ผมเข้าใจว่าการใช้ค่าในบริบทของตัวแบบผสมนั้นซับซ้อน
อย่างไรก็ตามเมื่อเร็ว ๆ นี้ฉันได้พบกับสองเอกสารด้านล่าง ในขณะที่วิธีการเหล่านี้ดูมีแนวโน้ม (สำหรับฉัน) ฉันไม่ใช่นักสถิติและฉันก็สงสัยว่าถ้ามีใครอีกคนที่มีข้อมูลเชิงลึกเกี่ยวกับวิธีที่พวกเขาเสนอและวิธีเปรียบเทียบกับวิธีอื่น ๆ ที่ได้รับการเสนอ
Nakagawa, Shinichi และ Holger Schielzeth "วิธีการทั่วไปและง่าย ๆ สำหรับรับ R2 จากโมเดลเอฟเฟกต์การผสมเชิงเส้นทั่วไป" วิธีการทางนิเวศวิทยาและวิวัฒนาการ 4.2 (2013): 133-142
จอห์นสันพอลซีดี "การขยาย R2GLMM ของ Nakagawa & Schielzeth ไปเป็นแบบจำลองเชิงลาดแบบสุ่ม" วิธีการในนิเวศวิทยาและวิวัฒนาการ (2014)
วิธีนี้ยังสามารถนำมาใช้โดยใช้ฟังก์ชั่น 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