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

能否在metafor包中采用Mantel-Haenszel法进行随机效应Meta分析?

Mantel-Haenszel方法在随机效应Meta分析中的R语言实现

metafor包的局限性

你说得没错,metafor包中的rma.mh()函数仅支持固定效应模型的Mantel-Haenszel分析,无法直接用于随机效应框架下的MH模型。这是因为传统MH方法最初就是为固定效应场景设计的,随机效应场景下MH的标准扩展并不普及,metafor包也未实现该功能。

替代方案:meta包

meta包可以实现随机效应的Mantel-Haenszel分析,具体通过metabin()函数完成:

  • 指定效应量类型(如比值比"OR"、相对风险"RR")
  • 设置method="MH"调用MH方法
  • 通过method.random="MH.random"启用随机效应模式

代码示例

# 加载meta包
library(meta)

# 构造二分类示例数据(试验组事件数/总例数,对照组事件数/总例数)
study_data <- data.frame(
  event_treat = c(12, 18, 9),
  total_treat = c(60, 70, 45),
  event_control = c(22, 28, 14),
  total_control = c(60, 70, 45)
)

# 执行随机效应Mantel-Haenszel分析(以OR为效应量)
mh_random_meta <- metabin(event_treat, total_treat, event_control, total_control,
                          sm = "OR",
                          method = "MH",
                          method.random = "MH.random")

# 输出分析结果
print(mh_random_meta)

该方法本质是对传统MH的扩展,会估计研究间异质性并以此调整合并效应量,适配二分类数据的随机效应Meta分析需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 15:52:26