多语言展示
当前在线:1414今日阅读:103今日分享:49

如何利用R进行meta分析

Meta分析也可以叫做“荟萃分析”,它是对具备特定条件下,相同科学问题的诸多研究结果进行综合的一类统计方法。优点是通过纳入多个研究从而扩大 样本量来增加结论的可信度,解决研究结果的不一致性。能够实现meta分析的统计软件很多,例如Stata,Revman等拥有专门的meta分析模块。 本文主要介绍如何利用R软件实现我们常见的meta分析功能。临床治疗数据的meta分析,本文选择常见的临床治疗数据演示R如何实现meta分析,之所以选择临床治疗数据是因为meta分析的很重要的一个应用领域便是医疗卫生行业。通过演示meta分析的基本操作过程,读者可以举一反三将meta分析应用到自己的研究领域。我们利用R中rmeta程序包,它是R语言专门进行meta分析的一个程序包,当然类似的meta分析程序包在R语言中非常多,比如 meta,metafor等,我们也将会在后续的文章中一一介绍。cochrane是rmeta程序包里面自带的一个用于meta分析的演示数据库。该数 据库是7个随机对照实验的数据,该数据库拥有5个变量(name,ev.trt,n.trt,ev.ctrl,n.ctrl),7个观察值(对应7个随机 对照实验)
工具/原料
1

笔记本电脑

2

R程序

方法/步骤
1

在R命令框输入以下命令:install.packages('rmeta')   #安装rmeta程序包library(rmeta)data(cochrane)              #加载演示数据库cochrane                    #显示数据库cochrane

2

计算fixed effect model 固定效应模型,输入以下命令:model.FE <- meta.MH(n.trt,n.ctrl,ev.trt,ev.ctrl, names=name,data=cochrane)summary(model.FE)

3

计算random effect model 随机效应模型,输入以下命令:model.RE <- meta.DSL(n.trt,n.ctrl,ev.trt,ev.ctrl, names=name,data=cochrane)summary(model.RE)

4

绘制森林图,输入以下命令:tabletext<-cbind(c('','Study',model.FE$names,NA,'Summary'),c('Deaths','(steroid)',cochrane$ev.trt,NA,NA), c('Deaths','(placebo)', cochrane$ev.ctrl, NA,NA), c('','OR',format(exp(model.FE$logOR),digits=2),NA,format(exp(model.FE$logMH),digits=2)))#上面的命令帮我们构建森林图需要的文字描述部分,包括1、name, 2、治疗组死亡人数,3、对照组死亡人数,4、单个研究的OR值。  m<- c(NA,NA,model.FE$logOR,NA,model.FE$logMH)l<- m-c(NA,NA,model.FE$selogOR,NA,model.FE$selogMH)*2u<- m+c(NA,NA,model.FE$selogOR,NA,model.FE$selogMH)*2#上面三行命令是准备森林图需要的参数包括OR值和OR值95%CI区间的上下限 forestplot(tabletext,m,l,u,zero=0,is.summary=c(TRUE,TRUE,rep(FALSE,8),TRUE),   clip=c(log(0.1),log(2.5)), xlog=TRUE,   col=meta.colors(box='royalblue',line='darkblue', summary='royalblue'))#上面的命令是最后绘制森林图

注意事项

meta分析综合数据的方法大体上分为固定效应模型和随机效应模型,具体选择哪个效应模型需要根据异质性检验的结果综合判断

推荐信息