ฉันทำการทดลองที่ฉันเลี้ยงดูครอบครัวที่แตกต่างกันซึ่งมาจากประชากรสองแหล่งที่แตกต่างกัน แต่ละครอบครัวได้รับมอบหมายให้หนึ่งในสองของการรักษา หลังจากการทดลองฉันวัดคุณสมบัติหลายอย่างของแต่ละคน เพื่อทดสอบผลกระทบของการรักษาหรือแหล่งที่มารวมทั้งการมีปฏิสัมพันธ์ของพวกเขาฉันใช้แบบจำลองเชิงเส้นผลกระทบเชิงเส้นกับครอบครัวเป็นปัจจัยสุ่มเช่น
lme(fixed=Trait~Treatment*Source,random=~1|Family,method="ML")
ดีมากตอนนี้ฉันต้องคำนวณส่วนประกอบความแปรปรวนแบบสัมพัทธ์นั่นคือเปอร์เซ็นต์ของความแปรปรวนที่อธิบายโดยการรักษาหรือแหล่งที่มาเช่นเดียวกับการมีปฏิสัมพันธ์
หากไม่มีเอฟเฟกต์แบบสุ่มฉันสามารถใช้ผลรวมของกำลังสอง (SS) เพื่อคำนวณความแปรปรวนที่อธิบายโดยแต่ละปัจจัย แต่สำหรับโมเดลผสม (ที่มีการประมาณค่า ML) ไม่มี SS ดังนั้นฉันคิดว่าฉันสามารถใช้การรักษาและแหล่งที่มาเป็นเอฟเฟกต์แบบสุ่มเพื่อประเมินความแปรปรวนเช่น
lme(fixed=Trait~1,random=~(Treatment*Source)|Family, method="REML")
อย่างไรก็ตามในบางกรณี lme ไม่ได้รวมกันดังนั้นฉันใช้ lmer จากแพ็คเกจ lme4:
lmer(Trait~1+(Treatment*Source|Family),data=DATA)
ที่ฉันแยกความแตกต่างจากแบบจำลองโดยใช้ฟังก์ชันสรุป:
model<-lmer(Trait~1+(Treatment*Source|Family),data=regrexpdat)
results<-VarCorr(model)
variances<-results[,3]
ฉันได้รับค่าเช่นเดียวกับฟังก์ชั่น VarCorr ฉันใช้ค่าเหล่านี้แล้วในการคำนวณอัตราร้อยละของการเปลี่ยนแปลงที่เกิดขึ้นจริงโดยนำผลรวมเป็นรูปแบบทั้งหมด
สิ่งที่ฉันกำลังดิ้นรนคือการตีความผลลัพธ์จากแบบจำลอง lme เริ่มต้น (ด้วยการรักษาและแหล่งที่มาเป็นผลกระทบคงที่) และแบบจำลองแบบสุ่มเพื่อประเมินองค์ประกอบความแปรปรวน (พร้อมการรักษาและแหล่งที่มาเป็นผลแบบสุ่ม) ฉันพบว่าส่วนใหญ่ร้อยละของความแปรปรวนที่อธิบายโดยแต่ละปัจจัยไม่สอดคล้องกับความสำคัญของผลกระทบคงที่
ตัวอย่างเช่นสำหรับลักษณะ HD, lme เริ่มต้นแสดงให้เห็นแนวโน้มสำหรับการมีปฏิสัมพันธ์เช่นเดียวกับความสำคัญสำหรับการรักษา เมื่อใช้วิธีการย้อนหลังฉันพบว่าการรักษามีแนวโน้มใกล้เคียงอย่างมีนัยสำคัญ อย่างไรก็ตามการประมาณส่วนประกอบความแปรปรวนฉันพบว่าแหล่งที่มานั้นมีความแปรปรวนสูงสุดคิดเป็น 26.7% ของความแปรปรวนทั้งหมด
The lme:
anova(lme(fixed=HD~as.factor(Treatment)*as.factor(Source),random=~1|as.factor(Family),method="ML",data=test),type="m")
numDF denDF F-value p-value
(Intercept) 1 426 0.044523 0.8330
as.factor(Treatment) 1 426 5.935189 0.0153
as.factor(Source) 1 11 0.042662 0.8401
as.factor(Treatment):as.factor(Source) 1 426 3.754112 0.0533
และ lmer:
summary(lmer(HD~1+(as.factor(Treatment)*as.factor(Source)|Family),data=regrexpdat))
Linear mixed model fit by REML
Formula: HD ~ 1 + (as.factor(Treatment) * as.factor(Source) | Family)
Data: regrexpdat
AIC BIC logLik deviance REMLdev
-103.5 -54.43 63.75 -132.5 -127.5
Random effects:
Groups Name Variance Std.Dev. Corr
Family (Intercept) 0.0113276 0.106431
as.factor(Treatment) 0.0063710 0.079819 0.405
as.factor(Source) 0.0235294 0.153393 -0.134 -0.157
as.factor(Treatment)L:as.factor(Source) 0.0076353 0.087380 -0.578 -0.589 -0.585
Residual 0.0394610 0.198648
Number of obs: 441, groups: Family, 13
Fixed effects:
Estimate Std. Error t value
(Intercept) -0.02740 0.03237 -0.846
ดังนั้นคำถามของฉันคือมันถูกต้องสิ่งที่ฉันทำ? หรือฉันควรใช้วิธีอื่นในการประมาณจำนวนความแปรปรวนที่อธิบายโดยแต่ละปัจจัย (เช่นการรักษาแหล่งที่มาและการมีปฏิสัมพันธ์) ตัวอย่างเช่นขนาดเอฟเฟกต์จะเป็นวิธีที่เหมาะสมกว่าหรือไม่