วิธีแยก / คำนวณเลเวอเรจและระยะทางของ Cook สำหรับโมเดลเอฟเฟกต์แบบผสมเชิงเส้น


10

ไม่มีใครรู้วิธีคำนวณ (หรือแยก) เลเวอเรจและระยะทางของ Cook สำหรับmerคลาสวัตถุ (ที่ได้รับจากlme4แพ็คเกจ) ฉันต้องการพล็อตพวกนี้สำหรับการวิเคราะห์เศษซาก

คำตอบ:


13

influence.MEคุณควรมีลักษณะที่แพคเกจ R ที่ lme4จะช่วยให้คุณคำนวณมาตรการของข้อมูลที่มีอิทธิพลสำหรับรุ่นที่มีผลกระทบที่เกิดจากการผสม

ตัวอย่างแบบ:

library(lme4)
model <- lmer(mpg ~ disp + (1 | cyl), mtcars)

ฟังก์ชั่นinfluenceเป็นพื้นฐานสำหรับขั้นตอนต่อไปทั้งหมด:

library(influence.ME)
infl <- influence(model, obs = TRUE)

คำนวณระยะทางของ Cook:

cooks.distance(infl)

ระยะทางพล็อตของ Cook:

plot(infl, which = "cook")

ป้อนคำอธิบายรูปภาพที่นี่


ขอบคุณ! สิ่งนี้จะช่วยได้อย่างแน่นอน วิธีคำนวณเกี่ยวกับการใช้ประโยชน์จากระยะทางของคุกกับพล็อตยกระดับ?
Roey Angel เมื่อ

@RoeyAngel ฉันคิดว่ามันเป็นไปไม่ได้กับinfluence.MEแพ็คเกจ น่าเสียดายที่ฉันไม่มีวิธีแก้ปัญหาสำหรับงานนี้
Sven Hohenstein

ไม่ควรinfl <- influence(model, group = "cyl")เพราะคุณระบุเอฟเฟกต์แบบสุ่มเป็น(1|cyl)? ฉันไม่รู้ฉันไม่เข้าใจสิ่งนี้เลยฉันเพิ่งติดตั้งอิทธิพล ... แต่ฉันไม่รู้ว่าจะใช้obs = TRUEเมื่อไรและเมื่อใดควรใช้group...
Curious

ฉันต้องการเพิ่มสิ่งต่อไปนี้: หากคุณต้องการรับหมายเลขแถวที่ระยะทาง D ของ Cook เกิดขึ้น - จำนวนเดียวกันที่เกิดขึ้นในพล็อตโดยไม่ต้องพล็อตคุณอาจใช้สูตร r ต่อไปนี้เกี่ยวกับตัวเลขระยะทาง Cooks มูลค่าปิดเช่น 0.1cooksD_data<-as.data.frame(cooks.distance(ft1)) cooksD_data_select<-cooksd[cooksD_data>0.1,drop=FALSE,] cooksD_oultiers<-as.numeric(rownames(cooksD_data_select))]
ประมาณการของอีเลียส

นี่ดีกว่าhatvalues()ฟังก์ชั่นที่แนะนำที่นี่หรือไม่?
อยากรู้อยากเห็น
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.