R 泊松回归
泊松回归涉及回归模型,其中响应变量是计数形式而不是分数形式。例如,足球比赛系列中的出生次数或获胜次数。响应变量的值也遵循泊松分布。
泊松回归的一般数学方程为:
log(y) = a + b1x1 + b2x2 + bnxn.....
以下是使用的参数说明:
-
y 是响应变量。
-
a and b 是数值系数。
-
x 是预测变量。
用于创建泊松回归模型的函数是 glm() 功能。
语法
的基本语法 glm() 泊松回归中的函数为:
glm(formula,data,family)
以下是上述函数中使用的参数说明:
-
formula 是表示变量之间关系的符号。
-
data 是给出这些变量值的数据集。
-
family 是 R 对象,用于指定模型的详细信息。它的值是逻辑回归的“泊松”。
例子
我们有内置的数据集“经纱”,它描述了羊毛类型(A 或 B)和张力(低、中或高)对每台织机的经纱断数的影响。让我们将“休息”视为响应变量,它是休息次数的计数。羊毛“类型”和“张力”作为预测变量。
输入数据
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 以考虑预测变量对响应变量的影响。正如所见,具有张力类型 M 和 H 的羊毛类型 B 对断裂次数有影响。