แนวทางแก้ไขในกรณีที่มีการละเมิดสมมติฐานเชิงเส้นในแบบจำลองการถดถอยโลจิสติกส์? (อาจเป็น R)
ฉันมีปัญหากับการถดถอยโลจิสติกส์ที่ฉันตั้งขึ้นและหวังว่าจะมีคนช่วยฉันได้ (ฉันทำงานกับ R)
ข้อมูลของฉันอิงตามค่ารายชั่วโมง ตัวแปรตามคือตัวแปรดิโคโทมัส (1 หรือ 0) แบบจำลองประกอบด้วยตัวแปรอิสระ 30 ตัวชี้วัด (9 ตัวมีทั้งการสังเกตเชิงบวกและเชิงลบ)
ตอนนี้ปัญหาของฉัน: สมมติฐานหนึ่งของการถดถอยโลจิสติกคือมีความสัมพันธ์เชิงเส้นระหว่างลอจิสติกของผลลัพธ์กับตัวแปรเมตริกอิสระแต่ละตัว ข้อสันนิษฐานนี้ละเมิดในทุกรุ่นของฉัน (สมมติฐานอื่น ๆ ทั้งหมดของการถดถอยโลจิสติกจะไม่ถูกละเมิด)
เพื่อตรวจสอบสิ่งนี้ฉันใช้การทดสอบ Box-Tidwell หลายครั้ง เมื่อมีตัวแปรทั้งหมดในการถดถอยโลจิสติกโดยที่ฉันจะทำการถดถอยตัวแปรตามเดิมบนตัวแปรอิสระและผลคูณของตัวแปรอิสระด้วยการแปลงลอการิทึมตามลำดับของตัวแปรอิสระ
(y ~ x1 + (x1*ln(x1)) + x2 + (x2*ln(x2)) + ... , familiy = binomial("logit"))
นอกจากนี้ฉันได้ทดสอบสมมติฐานเชิงเส้นด้วยฟังก์ชัน R boxTidwell(model$linear.predictors ~ independent variable)
สำหรับแต่ละตัวแปรแยกกัน สำหรับตัวแปรเกือบทั้งหมดการทดสอบแสดงให้เห็นความสำคัญและเป็นการละเมิดสมมติฐานของโมเดล การแปลงตัวแปรอิสระหลายตัวไม่ได้ช่วยเช่นกัน นอกจากนี้แบบจำลองของฉันล้มเหลวในการทดสอบ Hosmer-Lemeshow
ฉันรู้ว่าฉันสามารถเข้าใจสมมติฐานได้ถ้าฉันแปลงตัวแปรอิสระของเมตริกเป็นตัวแปรหมวดหมู่ อย่างไรก็ตามฉันต้องการหลีกเลี่ยงปัญหานี้ ฉันยังอ่านว่าฉันสามารถแก้ปัญหาด้วยวิธีการของ Splines ได้ น่าเสียดายที่ฉันไม่พบวรรณกรรมใด ๆ ที่อธิบายเรื่องนี้ โดยเฉพาะอย่างยิ่งไม่ใช่สำหรับการประมาณแบบจำลองโลจิสติกส์
ตอนนี้ฉันต้องการทราบว่ามีใครสามารถช่วยฉันได้ที่นี่
การละเมิดสมมติฐานหมายความว่าฉันไม่ได้รับอนุญาตให้ใช้โมเดลนี้และผลลัพธ์อาจผิดพลาดหรือไม่? (ฉันไม่ต้องการใช้แบบจำลองเป็นแบบจำลองการคาดการณ์หรือการคาดการณ์ แต่จะอธิบาย / อธิบายภายในช่วงเวลาของข้อมูลเท่านั้น)
ฉันจะใช้วิธีการของ Splines เพื่อแก้ปัญหาของฉันได้อย่างไร ฉันจะแปลผลได้อย่างไร? (มันจะช่วยฉันได้มากถ้าคำอธิบายเหล่านี้รองรับโดย R-code)
คำตอบ
หลายจุด:
การทดสอบ Hosmer-Lemeshow ถือว่าล้าสมัย: Hosmer-Lemeshow vs AIC สำหรับการถดถอยโลจิสติก
แทนที่จะทดสอบสมมติฐานเชิงเส้นให้ใช้เส้นถดถอยโดยตรงเพื่อที่คุณจะได้ไม่ต้องใช้สมมติฐานนั้น มีตัวอย่างมากมายในไซต์นี้ (โปรดทราบว่าการใช้เส้นแบ่งในการถดถอยโลจิสติกจะทำงานเหมือนกับในแบบจำลองการถดถอยอื่น ๆ ) เส้นแบ่งทำงานอย่างไรเมื่อใช้ทางด้านขวาของสมการ , ฉันจะหาค่า p-value ของการถดถอยของ spline / loess ได้อย่างไร?
อีกทางเลือกหนึ่งคือ gam (รุ่นเสริมทั่วไป) ซึ่งสามารถเลือกระดับการปรับให้เรียบ (เช่นจำนวนนอต spline) เป็นส่วนหนึ่งของข้อต่อ ดูTransforming ตัวแปรสำหรับการถดถอยพหุคูณใน R , ทำไมเส้นโค้งของฉันกลายเป็นไม่ได้มีความยืดหยุ่นมากขึ้นหลังจากการเปลี่ยนพารามิเตอร์ใน R mgcv?