一文掌握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代表药物剂量

一文掌握R语言快速实现普通Meta分析

1. 首先我们要设置工作路径:我这里设置D盘data文件夹为工作路径


setwd("D:/data")


2. 导入数据


twodata<-read.csv("D:/data/twodata.csv") #注意改成自己的路径哦


如下图导入后点击右边twodata可以看到数据导入后的表格

一文掌握R语言快速实现普通Meta分析


3.安装meta包,已经安装的忽略这一步(如果提示error可能已经安装了)


install.packages("meta")


查看是否安装可以在Rstudio右下角 Package窗口查看是否已经安装

一文掌握R语言快速实现普通Meta分析


meta包基本可以实现所有的普通meta分析,以下是Rstudio帮助菜单


?meta #查看meta包使用说明


一文掌握R语言快速实现普通Meta分析 一文掌握R语言快速实现普通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"即可。

一文掌握R语言快速实现普通Meta分析

6. 查看合并结果

summary(m1)

会给出固定效应模型和随机效应模型的结果,另外还有异质性检验的结果

一文掌握R语言快速实现普通Meta分析

7. 绘制森林图

forest(m1)

在Rstudio中右下角Plots对话框可看到绘制出的图片

一文掌握R语言快速实现普通Meta分析

点击Zoom放大可以看到完整的

一文掌握R语言快速实现普通Meta分析

一文掌握R语言快速实现普通Meta分析

可以导出为PDF在Adobe illustrator软件里进行进一步修饰

一文掌握R语言快速实现普通Meta分析

一文掌握R语言快速实现普通Meta分析


7. 绘制漏斗图

funnel(m1)


一文掌握R语言快速实现普通Meta分析

8. 进行发表偏倚Begg和egger's 检验


metabias(m1, method.bias = "rank") # begg法

metabias(m1, method.bias = "linreg") # egger法


一文掌握R语言快速实现普通Meta分析一文掌握R语言快速实现普通Meta分析


9. 绘制拉贝图


labbe(m1)


一文掌握R语言快速实现普通Meta分析


10.绘制Galbraith图


radial(m1)


一文掌握R语言快速实现普通Meta分析


11.绘制Baujat图


baujat(m1)


一文掌握R语言快速实现普通Meta分析

12.剪补法并绘制剪补后的漏斗图


trimfill(m1)

funnel(trimfill(m1))


一文掌握R语言快速实现普通Meta分析

一文掌握R语言快速实现普通Meta分析


13. 使用随机效应模型进行累积meta并绘制森林图


metacum(m1,pooled = "random")

forest(metacum(m1,pooled = "random"))


一文掌握R语言快速实现普通Meta分析一文掌握R语言快速实现普通Meta分析



14. 使用随机效应模型进行敏感性分析


metainf(m1, pooled = "random")

forest(metainf(m1, pooled = "random"))


一文掌握R语言快速实现普通Meta分析

一文掌握R语言快速实现普通Meta分析


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) #绘制森林图

一文掌握R语言快速实现普通Meta分析


还有meta回归这里不就演示了,大家可以去查看meta包的帮助文档。


一文掌握R语言快速实现普通Meta分析



如果对Meta分析一无所知,想了解怎么做meta分析,建议大家去听听我的课程。


一文掌握R语言快速实现普通Meta分析


本文作者

一文掌握R语言快速实现普通Meta分析

逍遥君:南京医科大学博士,主治医师,发表论文20余篇,第一作者或通讯作者SCI论文8篇,主持国自然及各级别课题多项,著有《逍遥君说科研系列课程》,主讲Meta分析、基金标书、论文写作,丁香园、募格学术特约讲师,同时具有多年基金、股市、P2P、数字货币投资经验。


一文掌握R语言快速实现普通Meta分析
精彩专栏,点击直达
 |  |  |  
 |  
  |  
 | 

欢迎来稿 分享你的故事和经验 ,投稿/广告/合作请联系微信:medical2006


自习室现有微信学术科研群,课程VIP群,医护理财群,硕博考研群,生活灌水群,资源共享群,欢迎加入。注意:入群请联系以下各群班长微信,找错人的不予通过


  • 学术科研/资源共享/生活灌水/课程VIP群medical2006

  • 硕博考研群:rrhh1018

  • 医护理财群:xiaobaitudd


只接受医学生、医务人员入群,广告、传销和金融骗子勿扰。


自习室现有2个教室


自习室在线课堂(学术科研班:Meta分析、基金标书、论文写作),请点击左下角阅读原文或扫下方二维码

一文掌握R语言快速实现普通Meta分析


自习室现有2个教室

一文掌握R语言快速实现普通Meta分析

一文掌握R语言快速实现普通Meta分析

以上是关于一文掌握R语言快速实现普通Meta分析的主要内容,如果未能解决你的问题,请参考以下文章

Meta分析教程新增R语言实战案例,你确定不来看看?

R语言轻松搞定最常用的meta分析!复制粘贴就能拥有~

如何用R语言进行相关系数与多变量的meta分析

R语言 | metafor的Meta分析及森林图示例

R语言对苏格兰独立民意调查的Meta分析

R语言中固定与随机效应Meta分析 - 效率和置信区间覆盖