You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用lme4或glmmTMB拟合quasi-poisson准泊松混合效应模型

R拟合混合效应准泊松模型复现Stata ppml结果的解决方案

方案1:使用glmmTMB包直接拟合

glmmTMB包原生支持准泊松(quasipoisson)族的混合效应模型,语法和lme4高度兼容,是最简单的实现方案,示例代码如下:

# 加载包
library(glmmTMB)

# 拟合混合效应准泊松模型,公式写法与lme4完全一致
qp_mixed_model <- glmmTMB(
  因变量 ~ 自变量1 + 自变量2 + (1 | 分组变量), 
  family = quasipoisson(link = "log"),
  data = 你的数据集
)

# 查看结果
summary(qp_mixed_model)

拟合得到的点估计、标准误均和准泊松模型的理论结果一致,可直接和Stata ppml的混合效应版本结果对齐。

方案2:基于lme4泊松模型手动校准标准误

准泊松模型与普通泊松混合模型的固定效应点估计完全相同,仅标准误会根据过度离散系数做缩放,你可以通过以下步骤手动调整得到等价结果:

  • 第一步:用lme4拟合普通泊松混合效应模型
library(lme4)
poi_mixed_model <- glmer(
  因变量 ~ 自变量1 + 自变量2 + (1 | 分组变量), 
  family = poisson(link = "log"),
  data = 你的数据集
)
  • 第二步:计算过度离散系数
# 用皮尔逊残差计算离散系数
dispersion <- sum(residuals(poi_mixed_model, type = "pearson")^2) / df.residual(poi_mixed_model)
  • 第三步:校准标准误
    将泊松模型输出的标准误乘以sqrt(dispersion),对应的p值同步调整后,结果和直接拟合准泊松模型完全一致。

对齐Stata ppml结果的注意事项

  • Stata的ppml命令默认会自动剔除完全被预测的零值观测,拟合前需要对R端的数据集做相同的预处理,避免样本差异导致结果不一致
  • 如果用到了簇稳健标准误,需要在拟合时指定对应的协方差矩阵估计方法,保证参数统计量的一致性

内容的提问来源于stack exchange,提问作者Bob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 04:18:03