一文掌握R语言快速实现普通Meta分析
Posted 逍遥君自习室
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一文掌握R语言快速实现普通Meta分析相关的知识,希望对你有一定的参考价值。
以前的课程里我给大家介绍了用revman、stata和CMA来进行普通meta分析,由于R现在的应用越来越多,有小伙伴询问怎么用R来做Meta分析,今天就给大家演示怎么用R语言来做Meta分析。
R和Rstudio的安装我这里不就介绍了,在前面的文章里有(),大家可以去回顾一下。
今天以计数资料为案例演示meta分析的过程,首先需要准备数据,在excel中按照下面的格式进行准备。
Study代表作者标签
Year代表发表年份
Tevent代表治疗组事件数
Ttotal代表治疗组总人数
Cevent代表对照组事件数
Ctotal代表对照组总人数
Dose代表药物剂量
1. 首先我们要设置工作路径:我这里设置D盘data文件夹为工作路径
setwd("D:/data")
2. 导入数据
twodata<-read.csv("D:/data/twodata.csv") #注意改成自己的路径哦
如下图导入后点击右边twodata可以看到数据导入后的表格
3.安装meta包,已经安装的忽略这一步(如果提示error可能已经安装了)
install.packages("meta")
查看是否安装可以在Rstudio右下角 Package窗口查看是否已经安装
meta包基本可以实现所有的普通meta分析,以下是Rstudio帮助菜单
?meta #查看meta包使用说明
4.加载meta包
library(meta)
5. 数据合并:二分类数据使用metabin函数(如果是连续性变量使用metacont函数,下期再说),注意R语言区分大小写
m1<-metabin(Tevent,Ttotal,Cevent,Ctotal,data=twodata,sm="OR", studlab = paste(study,year), label.e = "Intervention",label.c = "Control")
#m1只是赋值名称,可以随便指定;paste过程把"作者标签"和"发表年份"合并到一起作为纳入的研究的标签,label代表实验组和对照组的标签,注意R语言区分大小写;如果要使用RR值,只需将sm="OR"改成sm="RR"即可。
6. 查看合并结果
summary(m1)
会给出固定效应模型和随机效应模型的结果,另外还有异质性检验的结果。
7. 绘制森林图
forest(m1)
在Rstudio中右下角Plots对话框可看到绘制出的图片
点击Zoom放大可以看到完整的
可以导出为PDF在Adobe illustrator软件里进行进一步修饰
7. 绘制漏斗图
funnel(m1)
8. 进行发表偏倚Begg和egger's 检验
metabias(m1, method.bias = "rank") # begg法
metabias(m1, method.bias = "linreg") # egger法
9. 绘制拉贝图
labbe(m1)
10.绘制Galbraith图
radial(m1)
11.绘制Baujat图
baujat(m1)
12.剪补法并绘制剪补后的漏斗图
trimfill(m1)
funnel(trimfill(m1))
13. 使用随机效应模型进行累积meta并绘制森林图
metacum(m1,pooled = "random")
forest(metacum(m1,pooled = "random"))
14. 使用随机效应模型进行敏感性分析
metainf(m1, pooled = "random")
forest(metainf(m1, pooled = "random"))
14.亚组分析
m1<-metabin(Tevent,Ttotal,Cevent,Ctotal, data=twodata,sm="OR", studlab = paste(Study,Year), label.e = "Intervention",label.c = "Control", byvar = Dose)
#增加byvar=你的分组因素,我这里Dose是分组因素
forest(m1) #绘制森林图
还有meta回归这里不就演示了,大家可以去查看meta包的帮助文档。
如果对Meta分析一无所知,想了解怎么做meta分析,建议大家去听听我的课程。
本文作者
逍遥君:南京医科大学博士,主治医师,发表论文20余篇,第一作者或通讯作者SCI论文8篇,主持国自然及各级别课题多项,著有《逍遥君说科研系列课程》,主讲Meta分析、基金标书、论文写作,丁香园、募格学术特约讲师,同时具有多年基金、股市、P2P、数字货币投资经验。
自习室现有微信学术科研群,课程VIP群,医护理财群,硕博考研群,生活灌水群,资源共享群,欢迎加入。注意:入群请联系以下各群班长微信,找错人的不予通过
学术科研/资源共享/生活灌水/课程VIP群:medical2006
硕博考研群:rrhh1018
医护理财群:xiaobaitudd
只接受医学生、医务人员入群,广告、传销和金融骗子勿扰。
自习室现有2个教室:
自习室在线课堂(学术科研班:Meta分析、基金标书、论文写作),请点击左下角阅读原文或扫下方二维码。
自习室现有2个教室:
以上是关于一文掌握R语言快速实现普通Meta分析的主要内容,如果未能解决你的问题,请参考以下文章