r - 在 R 中使用 GEE 建模负二项分布数据有任何更新吗?

标签 r

目标:运行负二项分布的 GEE 来分析 R 中的数据集

这个问题被问了here ,但答案已经有大约 5 年历史了,我想知道是否有新的进展。我总结了我的数据,然后概述了我如何尝试寻找解决方案。

我的模型(使用泊松分布而不是使用 geeglm 包的负二项分布成功运行):

m1 <- geeglm(Diract ~ Dir*Rec + Year + offset(LnScan), 
             family = poisson("log"), data = Direct, id = ID, corstr = "exchangeable")

数据为here

Dirac:区间结果变量,从主管(B 或 C 组中的“Dir”)到接收者(A、B 或 C 组中的“Rec”)的行为计数。范围从 0 -4、过度分散。
Dir*Rec:兴趣的主要预测因子,两个因素(导演和接收者群体)的相互作用。动物属于 3 个组(生命阶段)之一:A、B、C。
年份:数据收集年份(2010、2011、2012) 目标族:具有对数链接功能的负二项式

在三年的研究期间,一些人 (~5) 在数据收集期间从一个群体过渡到另一个群体。我对每位董事都有多项措施(包括年内和之间)。例如,在整个研究期间都活着的个体在三年的研究中每年对 A、B 和 C 组的行为进行计数(总计 = 9 次)。有些人观察了三年,有些人只观察了一两年。

最初我在 SPSS 中使用 GEE,这是我不再使用的软件。在 SPSS 中,QIC 值表明负二项式比泊松更适合我的数据。

通过上面的 Stackoverflow 链接建议的

解决方案 1:使用 library("sos")findFn("{generalized estimatingequation}") 来在 R 中查找运行 GEE 的包。我检查了所有建议的 14 个软件包。 geepack 缺少负二项式族; ZeligJGEEaftgeeetmwgeeselMmethylCapSigmiLineage 利用 geepackMESSPGEEspind Threeboost 缺乏负二项式,而 repolr 是仅适用于顺序结果。

解决方案2由 Ben Bolker 在 Nabble 上建议:“我会在 MASS 包中尝试 glmmPQL。我不认为你可以用这种方式完全得到负二项式回归,但你绝对可以得到一个拟泊松模型。我认为可以互换 相关性对应于 glmmPQL 命令中的correlation=corCompSymm()。”

我的错误消息尝试:

m2 <- glmmPQL(Diract ~ Dir*Rec + offset(LnScan) + Year, 
              random = ~ 1 | ID, 
              family = negative.binomial(1), 
              data = Direct, 
              correlation = corCompSymm(form=~1|ID))

Error in glmmPQL(Diract ~ DirPar * RecPar + offset(LnScan) + Year, random = ~1 | : could not find function "corCompSymm"

最佳答案

这些年来这个问题已经被问过很多次了,我是在遇到同样的问题并寻找答案几个小时后才遇到的。两种解决方案:

  1. geeM 包允许使用负二项式族
  2. 通过 R reticulate 包导入 python statsmodels 模块并调用 R 中的 gee 拟合函数,该函数允许负二项式族

关于r - 在 R 中使用 GEE 建模负二项分布数据有任何更新吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49089476/

相关文章:

r - 如何提高饼图的可视化质量?

r - 扩展ggplot中定性变量的限制

r - 使用 PBSMapping 和 Shapefiles 帮助在 R 中绘制地理数据

r - 根据另一个栅格更改一个栅格中的像元值

r - tidyr::gather 与 reshape2::melt 在矩阵上

r - 根据另一个矩阵改进矩阵操作的 for 循环的方法

r - 带折线图的堆积条形图在 R 中无法使用plotly

r - 在 R 中组合多个模型对子集数据的预测的简单方法

r - 使用 R Plotly 组合分组条形图和堆积条形图

r - 通胀调整价格套餐?