如何提取meta包metabin函数亚组分析的合并效应量等结果?
提取亚组随机效应Meta分析结果并导出
1. 定位亚组结果的存储位置
运行names(met)后,可找到亚组随机效应分析的核心结果元素:
TE.random.subgroup:亚组合并效应量(sm="OR"时为对数OR,需转换为原始OR)lower.random.subgroup:置信区间下限(对数尺度)upper.random.subgroup:置信区间上限(对数尺度)I2.random.subgroup:亚组的I²异质性值subgroup.level:各亚组的分组标签
2. 提取并整理为数据框
将上述元素提取后转换为直观的格式,组合成数据框:
# 提取并转换亚组结果 subgroup_df <- data.frame( 亚组水平 = met$subgroup.level, 合并OR = exp(met$TE.random.subgroup), 95%CI下限 = exp(met$lower.random.subgroup), 95%CI上限 = exp(met$upper.random.subgroup), I2值 = met$I2.random.subgroup, stringsAsFactors = FALSE ) # 查看整理后的结果 print(subgroup_df)
3. 导出到Excel或CSV
导出为CSV文件
write.csv(subgroup_df, "亚组Meta分析结果.csv", row.names = FALSE, fileEncoding = "UTF-8")
导出为Excel文件
需先安装openxlsx包,再执行导出:
# 首次使用安装包 # install.packages("openxlsx") library(openxlsx) write.xlsx(subgroup_df, "亚组Meta分析结果.xlsx", rowNames = FALSE)
关键说明
- 当
sm="OR"时,metabin输出的是对数尺度的OR,必须用exp()转换为原始OR值,才能和森林图上标注的数值一致。若使用RR作为效应量,同样需要exp()转换;若为RD则无需转换。
内容的提问来源于stack exchange,提问作者user115916
相关产品推荐
相关产品推荐

