R - การถดถอยปัวซอง

การถดถอยแบบปัวซองเกี่ยวข้องกับโมเดลการถดถอยซึ่งตัวแปรตอบสนองอยู่ในรูปของจำนวนนับและไม่ใช่ตัวเลขเศษส่วน ตัวอย่างเช่นการนับจำนวนการเกิดหรือจำนวนครั้งที่ชนะในซีรีส์การแข่งขันฟุตบอล นอกจากนี้ค่าของตัวแปรตอบสนองจะเป็นไปตามการแจกแจงแบบปัวซอง

สมการทางคณิตศาสตร์ทั่วไปสำหรับการถดถอยปัวซองคือ -

log(y) = a + b1x1 + b2x2 + bnxn.....

ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์ที่ใช้ -

  • y คือตัวแปรตอบสนอง

  • a และ b คือค่าสัมประสิทธิ์ตัวเลข

  • x คือตัวแปรทำนาย

ฟังก์ชันที่ใช้ในการสร้างแบบจำลองการถดถอยปัวซองคือ glm() ฟังก์ชัน

ไวยากรณ์

ไวยากรณ์พื้นฐานสำหรับ glm() ฟังก์ชันในการถดถอยปัวซองคือ -

glm(formula,data,family)

ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์ที่ใช้ในฟังก์ชันข้างต้น -

  • formula คือสัญลักษณ์ที่แสดงความสัมพันธ์ระหว่างตัวแปร

  • data คือชุดข้อมูลที่ให้ค่าของตัวแปรเหล่านี้

  • familyเป็นวัตถุ R เพื่อระบุรายละเอียดของโมเดล ค่านี้คือ 'Poisson' สำหรับ Logistic Regression

ตัวอย่าง

เรามีชุดข้อมูลที่สร้างขึ้น "warpbreaks" ซึ่งอธิบายถึงผลกระทบของประเภทขนสัตว์ (A หรือ B) และความตึงเครียด (ต่ำปานกลางหรือสูง) ต่อจำนวนการบิดงอต่อกี่ทอผ้า ลองพิจารณา "ช่วงพัก" เป็นตัวแปรตอบสนองซึ่งเป็นการนับจำนวนการหยุดพัก "ประเภท" และ "ความตึง" ของขนสัตว์ถูกนำมาเป็นตัวแปรทำนาย

Input Data

input <- warpbreaks
print(head(input))

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

breaks   wool  tension
1     26       A     L
2     30       A     L
3     54       A     L
4     25       A     L
5     70       A     L
6     52       A     L

สร้างแบบจำลองการถดถอย

output <-glm(formula = breaks ~ wool+tension, data = warpbreaks,
   family = poisson)
print(summary(output))

เมื่อเรารันโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -

Call:
glm(formula = breaks ~ wool + tension, family = poisson, data = warpbreaks)

Deviance Residuals: 
    Min       1Q     Median       3Q      Max  
  -3.6871  -1.6503  -0.4269     1.1902   4.2616  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  3.69196    0.04541  81.302  < 2e-16 ***
woolB       -0.20599    0.05157  -3.994 6.49e-05 ***
tensionM    -0.32132    0.06027  -5.332 9.73e-08 ***
tensionH    -0.51849    0.06396  -8.107 5.21e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for poisson family taken to be 1)

    Null deviance: 297.37  on 53  degrees of freedom
Residual deviance: 210.39  on 50  degrees of freedom
AIC: 493.06

Number of Fisher Scoring iterations: 4

ในการสรุปเรามองหาค่า p ในคอลัมน์สุดท้ายให้น้อยกว่า 0.05 เพื่อพิจารณาผลกระทบของตัวแปรทำนายที่มีต่อตัวแปรตอบสนอง ดังที่เห็นผ้าขนสัตว์ชนิด B ที่มีความตึงเครียดประเภท M และ H มีผลกระทบต่อจำนวนการหยุดพัก