关于数据挖掘:R语言零膨胀泊松ZEROINFLATED-POISSON回归zip模型分析露营钓鱼数据实例估计IRR和OR

49次阅读

共计 2362 个字符,预计需要花费 6 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=26915 

零收缩泊松回归用于对超过零计数的计数数据进行建模。此外,实践表明,多余的零点是通过与计数值不同的过程生成的,并且能够独立地对多余的零点进行建模。因而,zip 模型有两个局部,泊松计数模型和用于预测多余零点的 logit 模型。

零收缩泊松回归示例

示例。州立野生动物生物学家想要模仿州立公园的渔民捕捉了多少鱼。游客会被问到他们勾留了多长时间,团队中有多少人,团队中是否有儿童以及捕捉了多少鱼。一些游客不钓鱼,但没有对于一个人是否钓鱼的数据。一些钓鱼的游客没有钓到任何鱼,因而数据中存在多余的零,因为人们没有钓鱼。

数据阐明

让咱们从下面的示例 2 开始。

咱们有 250 个去公园的个人的数据。每个小组都被询问他们捕捉了多少鱼(count),小组中有多少孩子(child),小组中有多少人(persons),以及他们是否带露营者到公园(camper)。

让咱们看一下数据。

summary(zib)

## 直方图的 X 轴为对数 10 标
ggplot(znb, aes(ount))

您可能会思考的分析方法

以下是您可能遇到的一些分析方法的列表。列出的一些办法是相当正当的,而另一些办法要么得宠,要么有局限性。

  • 零收缩泊松回归。
  • 零收缩负二项式回归——负二项式回归在扩散数据时体现更好,即方差远大于平均值。
  • 一般计数模型。
  • OLS 回归——您能够尝试应用 OLS 回归剖析这些数据。然而,计数数据是高度非正态的,并且不能通过 OLS 回归很好地预计。

零收缩泊松回归

summary(m1)

输入看起来十分像 R 中两个 OLS 回归的输入。在模型调用下方,您会发现一个输入块,其中蕴含每个变量的泊松回归系数以及标准误差、z 分数和 p 值系数。接下来是对应于通货膨胀模型的第二个块。这包含用于预测多余零点的 logit 系数及其标准误差、z 分数和 p 值。

模型的计数和收缩局部中的所有预测变量都具备统计显着性。该模型对数据的拟合显着优于空模型,即仅截距模型。为了证实状况的确如此,咱们能够应用对数似然差别的卡方测验将以后模型与没有预测变量的空模型进行比拟。

mnl <- update(m1, . ~ 1)

因为咱们在残缺模型中有三个预测变量,因而卡方测验的自由度为 3。这会产生较高的显着 p 值;因而,咱们的整体模型具备统计学意义。

请留神,下面的模型输入并没有以任何形式表明咱们的零收缩模型是否是对规范泊松回归的改良。咱们能够通过运行相应的规范 Poisson 模型而后对这两个模型进行 Vuong 测验来确定这一点。

vuong(p, m)

Vuong 测验将零收缩模型与一般泊松回归模型进行比拟。在这个例子中,咱们能够看到咱们的测验统计量是显着的,表明零收缩模型优于规范泊松模型。

咱们能够应用自举取得参数和指数参数的置信区间。对于泊松模型,这些将是事件危险比,对于零通胀模型,劣势比。此外,对于最终后果,可能心愿减少反复次数以帮忙确保后果稳固。

dt(coef(m1, "count"))

dpt(coef(m1, "zero"))

res <- boot(znb, f, R = 1200, pralel = "snow", ncus = 4)
## 输入后果
res

后果是交替的参数估计和标准误差。也就是说,第一行具备咱们模型的第一个参数估计值。第二个具备第一个参数的标准误差。第三列蕴含自举的标准误差。

当初咱们能够失去所有参数的置信区间。咱们从原始比例开始,应用百分位数和偏差调整的 CI。咱们还将这些后果与基于标准误差的置信区间进行比拟。

## 带百分位数和偏差调整的 CI 的基本参数估计值


## 增加行名
row.names(pms) <- names(coef(m))
## 输入后果
parms

## 与基于失常的近似值相比
confint(m1)

bootstrap 置信区间比基于正态的近似值要宽得多。应用持重标准误差时,自举 CI 与来自 Stata 的 CI 更加统一。

当初咱们能够预计泊松模型的事件危险比 (IRR) 和逻辑(零通胀)模型的劣势比 (OR)。

## 带百分位数和偏差调整的 CI 的指数化参数估计值
exps <- t(sapply(c(1, 3, 5, 7, 9), function(i) {out <- boot.ci

为了更好地了解咱们的模型,咱们能够计算预测变量的不同组合所捕捉的鱼的预期数量。事实上,因为咱们基本上应用的是分类预测,咱们能够应用函数来计算所有组合的期望值来创立所有组合。最初咱们创立一个图表。

ggplot(neda1, aes(x = cld, y = pat, colour = factor(pos))) +
  geom_point() +
  geom_line() +
  facet_wrap(~cmp)

须要思考的事项

  • 因为 zip 同时具备计数模型和 logit 模型,因而这两个模型中的每一个都应该具备良好的预测器。这两个模型不肯定须要应用雷同的预测变量。
  • 零收缩模型的逻辑局部可能会呈现完满预测、拆散或局部拆散的问题。
  • 计数数据通常应用裸露变量来批示事件可能产生的次数。
  • 不倡议将零收缩泊松模型利用于小样本。

最受欢迎的见解

1.R 语言多元 Logistic 逻辑回归 利用案例

2. 面板平滑转移回归 (PSTR) 剖析案例实现剖析案例实现 ”)

3.matlab 中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R 语言泊松 Poisson 回归模型剖析案例

5.R 语言混合效应逻辑回归 Logistic 模型剖析肺癌

6.r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现

7.R 语言逻辑回归、Naive Bayes 贝叶斯、决策树、随机森林算法预测心脏病

8.python 用线性回归预测股票价格

9.R 语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测

正文完
 0