R語言泊鬆回歸
泊鬆回歸涉及回歸模型,其中,應變量是計數且不是為分數的形式。例如出生或足球比賽係勝場數的列的計數。響應變量的值遵循泊鬆分布。
對於泊鬆回歸一般的數學公式是:
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
我們尋找最後一列的p值是摘要小於0.05來考慮,預測變量的對響應變量的影響。可以看出羊毛B型有張力型M和H對中斷的次數影響。