能否在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
相关产品推荐
相关产品推荐

