นี้เป็นอีกคำถามที่คิด แต่ที่ผมใช้ผมจะอ้างถึงแพคเกจในR
R
หากเป้าหมายคือการทำให้แบบจำลองเชิงเส้นตรงกับวัตถุประสงค์ของการทำนายและจากนั้นทำการคาดการณ์ว่าจะไม่มีเอฟเฟกต์แบบสุ่มมีประโยชน์ใด ๆ ในการใช้แบบจำลองเอฟเฟกต์ผสมหรือควรใช้โมเดลเอฟเฟกต์คงที่แทน?
ตัวอย่างเช่นถ้าฉันมีข้อมูลเกี่ยวกับน้ำหนักเทียบกับส่วนสูงกับข้อมูลอื่นและสร้างแบบจำลองต่อไปนี้โดยใช้โดยlme4
ที่ตัวแบบเป็นปัจจัยที่มี ระดับ ():
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
จากนั้นฉันต้องการที่จะสามารถทำนายน้ำหนักจากแบบจำลองโดยใช้ข้อมูลส่วนสูงและอายุใหม่ เห็นได้ชัดว่าความแปรปรวนของเรื่องในข้อมูลต้นฉบับนั้นถูกจับในแบบจำลอง แต่เป็นไปได้ไหมที่จะใช้ข้อมูลนี้ในการทำนาย? สมมติว่าฉันมีข้อมูลส่วนสูงและอายุใหม่และต้องการคาดการณ์น้ำหนักฉันสามารถทำได้ดังนี้:
predict(mod1,newdata=newdf) # newdf columns for height, age, subject
สิ่งนี้จะใช้predict.merMod
และฉันสามารถรวมคอลัมน์สำหรับหัวเรื่อง (ใหม่) ในnewdf
หรือตั้งค่าre.form =~0
ได้ ในอินสแตนซ์แรกมันไม่ชัดเจนว่าแบบจำลองทำอะไรกับปัจจัยเรื่อง 'ใหม่' และในอินสแตนซ์ที่สองความแปรปรวนของเรื่องที่ถูกจับในแบบจำลองจะถูกละเว้น (โดยเฉลี่ย) สำหรับการทำนายหรือไม่
ไม่ว่าในกรณีใดฉันจะเห็นว่าโมเดลเชิงเส้นเอฟเฟกต์คงที่อาจเหมาะสมกว่า ที่จริงถ้าความเข้าใจของฉันถูกต้องแล้วตัวแบบผลคงที่ควรทำนายค่าเช่นเดียวกับตัวแบบผสมถ้าไม่ได้ใช้ผลแบบสุ่มในการทำนาย ควรเป็นกรณีนี้หรือไม่? ในR
มันไม่ได้เป็นเช่น:
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
predict(mod1,newdata=newdf, re.form=~0) # newdf columns for height, age, subject
ให้ผลลัพธ์ที่แตกต่างไปที่:
mod2 <- lm(weight ~ height + age, data=df)
predict(mod2,newdata=newdf) # newdf columns for height, age