วิธีการพล็อตขอบเขตการตัดสินใจใน R สำหรับรูปแบบการถดถอยโลจิสติก?


16

ฉันสร้างโมเดลการถดถอยโลจิสติกโดยใช้ glm ใน R. ฉันมีตัวแปรอิสระสองตัว ฉันจะพล็อตขอบเขตการตัดสินใจของโมเดลของฉันในพล็อตกระจายของสองตัวแปรได้อย่างไร ตัวอย่างเช่นฉันจะพล็อตร่างเช่น: http://onlinecourses.science.psu.edu/stat557/node/55

ขอบคุณ


2
ลิงก์ไปยังรูปภาพนั้นตายแล้ว
— Nick Stauner

คำตอบ:


25
set.seed(1234)

x1 <- rnorm(20, 1, 2)
x2 <- rnorm(20)

y <- sign(-1 - 2 * x1 + 4 * x2 )

y[ y == -1] <- 0

df <- cbind.data.frame( y, x1, x2)

mdl <- glm( y ~ . , data = df , family=binomial)

slope <- coef(mdl)[2]/(-coef(mdl)[3])
intercept <- coef(mdl)[1]/(-coef(mdl)[3]) 

library(lattice)
xyplot( x2 ~ x1 , data = df, groups = y,
   panel=function(...){
       panel.xyplot(...)
       panel.abline(intercept , slope)
       panel.grid(...)
       })

ข้อความแสดงแทน

ฉันต้องสังเกตว่าการแยกที่สมบูรณ์แบบเกิดขึ้นที่นี่ดังนั้นglmฟังก์ชั่นจึงเตือนคุณ แต่นั่นไม่สำคัญที่นี่เพราะจุดประสงค์คือเพื่อแสดงให้เห็นถึงวิธีการวาดขอบเขตเชิงเส้นและการสังเกตสีตาม covariates ของพวกเขา


ฉันหวังว่าฉันจะไม่ล้าสมัยถ้าฉันใช้ขัดแตะ :-)
— suncoolsu

2
ฉันหวังว่าหากนี่เป็นปัญหาของ HW คุณจะไม่เพียงคัดลอกวาง
— suncoolsu

ขอบคุณ นี่ไม่ใช่คำถาม HW และคำตอบมีประโยชน์สำหรับฉันที่จะเข้าใจรูปแบบของฉัน
— user2755

โอ้ใช่คุณคือ :)
— mpiktas

1
ใครช่วยอธิบายตรรกะที่อยู่เบื้องหลังความชันและการสกัดกั้นให้ฉันได้ไหม (เกี่ยวกับรูปแบบการโลจิสติก)
— เฟอร์นันโด

22

ต้องการที่จะตอบคำถามในความคิดเห็นต่อคำตอบที่ได้รับการยอมรับจากเฟอร์นันโด: ใครสามารถอธิบายตรรกะที่อยู่เบื้องหลังความชันและการสกัดกั้นได้หรือไม่?

สมมติฐานสำหรับการถดถอยโลจิสติกส์ในรูปแบบของ:

ชั่วโมงθ=ก.(Z)

ก.(Z)Z

Z=θ0+θ1x1+θ2x2

Y=1ชั่วโมงθ≥0.5

θ0+θ1x1+θ2x2≥0

ข้างต้นเป็นขอบเขตการตัดสินใจและสามารถจัดใหม่เป็น:

x2≥-θ0θ2+-θ1θ2x1

Y=ม.x+ขม.ข


2
คำอธิบายที่ดีพร้อมกับคำตอบข้างต้น!
— Augustin
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.