ให้สามตัวแปรy
และx
ซึ่งเป็นบวกอย่างต่อเนื่องและz
ซึ่งเป็นเด็ดขาดฉันมีสองรูปแบบผู้สมัครที่กำหนดโดย:
fit.me <- lmer( y ~ 1 + x + ( 1 + x | factor(z) ) )
และ
fit.fe <- lm( y ~ 1 + x )
ฉันหวังว่าจะเปรียบเทียบแบบจำลองเหล่านี้เพื่อพิจารณาว่าแบบจำลองใดเหมาะสมกว่า ดูเหมือนว่าผมว่าในความรู้สึกบางอย่างฝังอยู่ในfit.fe
fit.me
โดยทั่วไปเมื่อสถานการณ์ทั่วไปนี้มีการทดสอบแบบไคสแควร์สามารถทำได้ ในR
เราสามารถทำการทดสอบนี้ด้วยคำสั่งดังต่อไปนี้
anova(fit.fe,fit.me)
เมื่อทั้งสองรุ่นมีเอฟเฟกต์แบบสุ่ม (สร้างโดยlmer
จากlme4
แพ็คเกจ) anova()
คำสั่งทำงานได้ดี เนื่องจากโดยทั่วไปแล้วจะแนะนำให้ทดสอบสถิติ Chi-Square ผ่านการจำลองอย่างไรก็ตามเรายังสามารถใช้สถิติในขั้นตอนการจำลองได้
เมื่อทั้งสองรุ่นมีเอฟเฟกต์ถาวรเท่านั้นวิธีการนี้ --- และanova()
คำสั่งที่เกี่ยวข้อง--- ทำงานได้ดี
แต่เมื่อรุ่นหนึ่งที่มีผลกระทบสุ่มและรูปแบบที่ลดลงมีเพียงผลกระทบคงที่ในขณะที่สถานการณ์ข้างต้นanova()
คำสั่งไม่ทำงาน
โดยเฉพาะอย่างยิ่งฉันได้รับข้อผิดพลาดต่อไปนี้:
> anova(fit.fe, fit.me)
Error: $ operator not defined for this S4 class
มีอะไรผิดปกติหรือไม่หากใช้วิธี Chi-Square จากด้านบน (พร้อมการจำลอง) หรือนี่เป็นเพียงปัญหาของการanova()
ไม่รู้วิธีจัดการกับตัวแบบเชิงเส้นที่เกิดจากฟังก์ชั่นต่าง ๆ หรือไม่?
กล่าวอีกนัยหนึ่งการสร้างสถิติ Chi-Square ด้วยตนเองนั้นมาจากแบบจำลองด้วยตนเองหรือไม่ ถ้าเป็นเช่นนั้นระดับของเสรีภาพที่เหมาะสมสำหรับการเปรียบเทียบแบบจำลองเหล่านี้คืออะไร? โดยการคำนวณของฉัน:
เรากำลังประเมินสองพารามิเตอร์ในโมเดลผลกระทบคงที่ (ความชันและจุดตัด) และอีกสองพารามิเตอร์ (พารามิเตอร์ความแปรปรวนสำหรับความชันแบบสุ่มและจุดตัดแบบสุ่ม) ในโมเดลผสมผลกระทบ โดยทั่วไปแล้วพารามิเตอร์สกัดกั้นไม่ได้ถูกนับในการคำนวณองศาอิสระดังนั้นนั่นหมายความว่าและ ; ต้องบอกว่าฉันไม่แน่ใจว่าควรรวมพารามิเตอร์ความแปรปรวนสำหรับพารามิเตอร์สุ่มเอฟเฟ็กต์ในการคำนวณอิสระหรือไม่ การประมาณค่าความแปรปรวนสำหรับพารามิเตอร์เอฟเฟกต์คงที่ไม่ได้ถูกพิจารณาแต่ฉันเชื่อว่าเป็นเพราะการประมาณค่าพารามิเตอร์สำหรับเอฟเฟกต์คงที่จะถือว่าเป็นค่าคงที่ที่ไม่รู้จักในขณะที่พวกเขาถูกพิจารณาว่าเป็นตัวแปรสุ่มที่ไม่รู้จักสำหรับผลผสม ฉันขอขอบคุณความช่วยเหลือเกี่ยวกับปัญหานี้
ในที่สุดใครบ้างมีวิธีที่เหมาะสมกว่า ( R
- ตาม) การเปรียบเทียบแบบจำลองเหล่านี้หรือไม่
lm()
ด้วยgls()
จากnlme
แพคเกจและlmer()
ด้วยlme()
(อีกครั้งจากnlme
แพคเกจ) ทุกอย่างจะทำงานได้ดี แต่โปรดทราบว่าคุณจะได้รับการทดสอบแบบอนุรักษ์นิยม (ค่าpใหญ่เกินไป) เนื่องจากพารามิเตอร์สำหรับโมเดลที่ง่ายกว่านั้นอยู่บนขอบเขตของพื้นที่พารามิเตอร์ และการเลือกว่าจะรวมเอฟเฟกต์แบบสุ่มควรขึ้นอยู่กับทฤษฎี (เช่นแผนการสุ่มตัวอย่าง) ไม่ใช่การทดสอบทางสถิติ