R 泊松回归

泊松回归包括回归模型,其中响应变量是计数而不是分数的形式。 例如,足球比赛系列中的出生次数或胜利次数。 此外,响应变量的值遵循泊松分布。

泊松回归的一般数学方程为

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

以下是所使用的参数的描述

  • y是响应变量。

  • ab是数字系数。

  • x是预测变量。

用于创建泊松回归模型的函数是glm()函数。

语法

在泊松回归中glm()函数的基本语法

  1. glm(formula,data,family)

以下是在上述功能中使用的参数的描述

  • formula是表示变量之间的关系的符号。

  • data是给出这些变量的值的数据集。

  • family是R语言对象来指定模型的细节。 它的值是“泊松”的逻辑回归。

实例

我们有内置的数据集“warpbreaks”,其描述了羊毛类型(A或B)和张力(低,中或高)对每个织机的经纱断裂数量的影响。 让我们考虑“休息”作为响应变量,它是休息次数的计数。 羊毛“类型”和“张力”作为预测变量。

输入数据

  1. input <- warpbreaks
  2. print(head(input))

当我们执行上面的代码,它产生以下结果:

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

创建回归模型

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

当我们执行上面的代码,它产生以下结果:

  1. Call:
  2. glm(formula = breaks ~ wool + tension, family = poisson, data = warpbreaks)
  3. Deviance Residuals:
  4. Min 1Q Median 3Q Max
  5. -3.6871 -1.6503 -0.4269 1.1902 4.2616
  6. Coefficients:
  7. Estimate Std. Error z value Pr(>|z|)
  8. (Intercept) 3.69196 0.04541 81.302 < 2e-16 ***
  9. woolB -0.20599 0.05157 -3.994 6.49e-05 ***
  10. tensionM -0.32132 0.06027 -5.332 9.73e-08 ***
  11. tensionH -0.51849 0.06396 -8.107 5.21e-16 ***
  12. ---
  13. Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 1
  14. (Dispersion parameter for poisson family taken to be 1)
  15. Null deviance: 297.37 on 53 degrees of freedom
  16. Residual deviance: 210.39 on 50 degrees of freedom
  17. AIC: 493.06
  18. Number of Fisher Scoring iterations: 4

在摘要中,我们查找最后一列中的p值小于0.05,以考虑预测变量对响应变量的影响。 如图所示,具有张力类型M和H的羊毛类型B对断裂计数有影响。