泊松回歸涉及回歸模型,其回應變數是計數形式而不是分數數字。 例如,計算出生人數或一個足球比賽系列中的勝率數。回應變數的值也遵循泊松分佈。
泊松回歸的一般數學方程為 -
log(y) = a + b1x1 + b2x2 + bnxn.....
以下是使用的參數的描述 -
- y - 是回應變數。
- a 和 b 是數字係數。
- x - 是預測變數。
用於創建泊松回歸模型的函數是glm()
函數。
語法
實現泊松回歸的glm()
函數的基本語法是 -
glm(formula,data,family)
以下是上述函數中使用的參數的描述 -
- formula - 是呈現變數之間關係的符號。
- data - 是給出這些變數值的數據集。
- family -是R對象來指定模型的細節,邏輯回歸的值是“泊松”。
示例
我們有內置數據集“warpbreaks”
,它描述了羊毛類型(A
或B
)和張力(低,中或高)對每個織機的翹曲數的影響。讓我們將“breaks”
視為回應變數,這是一個休息次數的計數。羊毛“type”
和“tension”
作為預測變數。
輸入數據
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
在上面結果中,我們在最後一列中尋找小於0.05
的p
值來考慮預測變數對回應變數的影響。 正如所看到的,具有M
型和H
型張力的羊毛型B
對休息次數有影響。