搜档网
当前位置:搜档网 › Stata在Meta分析中的应用

Stata在Meta分析中的应用

2007年12月第7卷第6期

循证医学

TheJourna]ofEvidence—BasedMedicine

Dee.2007

V01.7NO.6

?循证医学中的医学统计学问题?

Stata在Meta分析中的应用

柏建岭1,钟文昭2郑明华3,陈峰

(1.南京医科大学公共卫生学院流行病与卫生统计学系,南京210029;

2.广东省人民医院肿瘤中心,广州510080;

3.温州医学院附属第一医院感染内科,浙江温州325000)

[摘要]Stata是一个功能强大而又小巧玲珑的统计分析软件,其Meta分析功能十分全面。本文结合3个实例介绍rStata软件对二分类变量、连续性变量和生存分析等所涉及的Stata命令及输出结果。和ReviewManager相比,Stata可更个性化、更高效专业地完成Meta分析,且更易于为高影响力杂志所认同。

[关键词]统计学;软件;Stata;Meta分析

[中图分类号]TP319[文献标识码]A[文章编号]1671—5144(2007)06—0363—06

Meta—AnalysisinStata

BAIJian—lin91,ZHONGWen—zha02,ZHENGMing—hua3,CHENFen91

(J.DepartmentofEpidemiologyandBiastatistics,SchoolofPublicHealth,

NanjingMedicalUniversity,Nanjing210029,China;

2.CancerCenter,GuangdongProvincialPeople'sHaspital,Guangzhou510080,China;

3.DepartmentofInfectionandLiverDiseases,TheFirstAffiliatedHospitalofWenzhouMedical

College,ZhejiangWenzhou325000,China)

Abstract:Stataisasmallbutpowerfulsoftware,withcomprehensivefunctionformeta—analysis.Thismanuscript,togetherwiththreecases,illustratedStataproceduresandcorrespondingresultsforprocessingdichotomousvariables,continuousvariablesandsurvivalanalysisinmeta—analysis.ComparedwithReviewManager,anotherpopularsoftwareformeta—analysis,Stataismorepersonalized,moreprofessionalwithequivalentefficacy,andmoreeasilyrecognizedbyhigh—impactmagazines.

Keywords:statistics;software;Stata;metaanalysis

1前言

Stata是一个功能强大而又小巧玲珑的统计分析软件,最初由美国计算机资源中心(ComputerResourceCenter)研制,现为Stata公司的产品。从1985年1.0版问世以来。已连续推出10个主要版本,并从4.0版起进入Windows时代。通过不断的更新和扩充,软件功能已日趋完善。它操作灵活、简单、易用,同时具有数据管理软件、统计分析软件、

[作者简介]柏建岭(1978一),男,江苏盐城人,生物统计学在读博士。

[通讯作者]陈峰,Tel:025—86862754,E-mail:dr.ehenfeng@163.COB绘图软件、矩阵计算软件和程序语言的特点,在许多方面别具一格,和SAS、SPSS一起并称为新的三大权威统计软件Ⅲ。Stata的许多高级统计模块均是程序文件(ADO文件),Stata公司在这方面持开放的态度,允许用户自行修改、添加和发布ADO文件,用户可随时到Stata网站或者其他个人网站上寻找并下载所需的程序包安装后使用。这一特点使得全球的统计学家均乐于在Stata上首先实现所研究的最新计算方法,并对外免费提供下载。从而使Stata始终处于统计分析方法发展的最前沿,用户几乎总是能很快找到最新统计计算方法的Stata程序版本。这也使Stata自身成为几大统计软件中升级最多、最频繁的一个。

 万方数据

364循证医学2007年第7卷第6期

ReviewManager(简称RevMan)是国际Cochrane协作网为系统评价(systematicreview)I作者所提供的专用软件,是Cochrane系统评价的一体化、标准化软件。从计算机软件的角度来看,它主要包括了Cochrane系统评价的文字处理与Meta分析两大功能。是目前Meta分析专用软件中较成熟的软件之一。

RevMan虽然简单易学.但只提供了对计数资料如有效率的优势比(oddsratio)、相对危险度(relativerisk)和差率(riskdifference)的合并方法和计量资料如呈正态分布的资料(血压、身高等)的合并方法。同时,RevMan缺乏诊断性试验的Meta分析和Meta回归的功能。相对而言,Stata的Meta分析功能更全面和强大。该软件除了可以完成二分类变量和连续性变量的Meta分析,也可以进行Meta回归分析、累积Meta分析、单个研究影响分析、诊断试验的Meta分析、剂量反应关系Meta分析、生存分析资料合并等几乎所有Meta分析方法;还可以对发表偏倚进行Begg’S检验和Egger's检验。在Stata软件中,可以绘制Meta分析的相关图形,如森林图(forestplot)、漏斗图(funnelplot)和L’Abbe图。国外文献中大部分Meta分析文章都是通过Stata的meta.ado模块完成。本文拟通过3个实例介绍Stata用于Meta分析的方法。

图1Stata9.2启动后的界面

2Stata的界面功能和基本语法

2.1Stata的界面功能

单击Stata软件图标进入Stata,图1为Stata9.2启动后的界面。

除了Windows版本软件通用的菜单栏、工具栏、状态栏等外,Stata的默认启动界面主要由四个窗口构成,分述如下。

2.1.1结果窗口(StataResuhs)

位于界面右上部,软件运行中的所有信息,如所执行的命令、执行结果和出错信息等均在该处体现。窗口中使用不同的颜色区分不同的文本,如默认情况下白色表示命令,红色表示错误信息。绿色和黄色为结果输出和注释。

2.1.2命令窗口(StataCommand)

位于结果窗口右下部。相当于DOS中的命令行,此处用于键入需要执行的命令,回车后即开始执行,相应的结果则会在结果窗El中显示。2.1.3命令回顾窗口(Review)

位于界面左上部,所有执行过的命令会依次在该窗口中列出,单击后命令即被自动拷贝到命令窗口中:如果需要重复执行,用鼠标在“Review”窗口中双击相应的命令即可。

2.1.4变量名窗口(Variables)

位于界面左下部.列出当前数据集中的所有变量名称。

2.2Stata命令的基本语法

Stata命令的基本语法格式如下:

[特殊选项]关键词命令参数[,命令选项]

中括号表示其中的内容不一定总是出现,下面对语句中的各元素分别加以解释。

2.2.1特殊选项

是一些在大部分命令中通用的选项。由于执行的功能比较特殊,因此将他们提前,并使用空格和命令正文分隔。特殊选项中最常用的有分组执行相同语句的“bv”命令,按指定的条件重复执行的“for”命令等。

2.1.2关键词

相当于一句话的主语,指明了所执行的是哪一条Stata命令,关键词在一条命令中必须出现。大多数命令的关键词都是采用相关的英文单词.简单易记,并且在Stata中还允许对关键词进行缩写(每个命令不同,无特殊规律),方便了使用。

2.2.3命令参数

相当于一句话的谓语和宾语.用于指明相应的命令在执行时需要使用的变量、参数等。大多数Stata命令都需要指定参数,但也有例外,此时系统会自动按照缺省方式执行。比如“describe”命令,如果不指定任何参数,则系统会默认对当前使用的数据集中的所有变量进行描述。

2.2.4命令选项

相当于一句话中的定语、状语、补语等修饰成

分,用于对相应的命令进行限制或更精确的指定, 万方数据

柏建岭,等.Stata在Meta分析中的应用365在命令中不一定出现。

3Meta分析中常用的命令

表1中列出了Meta分析时在Stata中进行数

据操作时常用的命令关键词[2]。

表1Stata中进行meta分析时常用的命令关键词

命令关键词执行的操作

metan

metacunlmetainfmetabiasmetareg固定效应模型和随机效应模型Meta分析累积Meta分析

Meta分析中单个研究的影响

Meta分析中检验发表偏倚

Meta回归

囿于篇幅,仅详细介绍Meta分析中最常用的metan和metabias命令。

3.1metan命令

metan是metaanalysis命令,可以合并二分类及连续数据;而且对效应量及相应标准误或可信区间进行Meta分析;并能得到12统计量进行异质性检验,同时给出森林图(forestplot)。其命令行格式为:

metan变量名[,选择项]

①二分类资料meta命令后跟四个变量。依次为试验组发生事件(如死亡)数、未发生事件(如未死亡)数、对照组发生事件(如死亡)数和未发生事件(如未死亡)数。

②连续性资料meta命令后跟六个变量,分别是试验组的样本量、均数、标准差,对照组的样本量、均数、标准差,如metannlmlsdln2m2sd2。

③已知效应量和标准误或效应量和可信区间上下限以OR为例metan命令后跟两个变量(效应量的对数值和其标准误)如metanlogor

selogor,eformeffect(oddsratio)或三个变量(效应量的对数值,可信区间上限的对数值,可信区间下限的对数值)如metanlogorlogullogll,eformeffect(oddsratio)。3.1.1用于二分类资料(四变量)的选项有:

rr/串合并相对危险度(riskratios),为默认选项

or/水合并优势比(oddsratios)

rd/术合并率差(riskdifferences)

fixed/冰指定固定效应模型(MantelandHaenszelmethod),为默认选项

fixedi/术指定固定效应模型(inversevariancemethod)peto/半指定Peto法合并优势比(oddsratios)

random/木指定随机效应模型(DerSimonian&Lairdmethod),其异质性估计采用Mantel—

Haenszelmodel

randomi/:|:指定随机效应模型(DerSimonian&Lairdmethod),其异质性估计采用inverse

variancefixedeffectmodel

3.1.2用于连续性资料(六变量)的选项有:

cohen/术Cohen法合并标准差,为默认选项

hedges/半Hedge法合并标准差

glass/木Glass法合并标准差

nostandard/术合并加权均数之差(非标化),否则合计标化均数之差

fixed/术指定固定效应模型(inversevariancemethod),为默认选项

random/术指定随机效应模型(DerSimonian&Lairdmethod)

3.1.3用于已知效应量和标准误或效应量和可信区间上下限选项有:

efrom/术效应量及其可信区间指数化(仅用于合并RR和OR)

3.1.4共用选项有:

by(byvar)/:.:指定分组变量.亚组分析时常用

label([namevar=namevar][,yearvar=yearvar])/水指定每个研究的标签

boxsca()/术指定森林图中方块的显示比例缺省为13.2metabias命令

metabias命令用于BeggandMazumdar等提出的秩相关检验及Egger等提出的线性回归法.用于检测漏斗图的对称性。命令行格式为:

metabias变量名[,选择项]

变量有三种形式:

①效应量及其标准误如metabias

logrrselogrr,graph(begg)。

②效应量及其方差如metabiaslogrrvarlogrrifsite==3,vargraph(egger)。

③RR(OR)及其可信区间上下限如113etabiasIT11ul,ciby(site)。

选项有:

by(byvar)/术指定分组变量

graph(begg)/:l:画begg漏斗图

graph(egger)/:l:画egger不对称图

4实例分析

例1[3]为了探讨用Aspirin预防心肌梗塞(myo—cardialinfarction,MI)后死亡的发生,美国在1976—1988年问进行了7个关于Aspirin预防MI后死亡

 万方数据

366循证医学2007年第7卷第6期的研究,其结果见表2,其中6项研究的结果表明

Aspirin组与安慰剂组的MI后死亡率的差别无统

计学意义,只有1项结果表明Aspirin预防MI后死

亡有效并且差别有统计学意义。现根据表2所提供

的资料作Meta分析。

表2Aspirin预防心肌梗塞死亡的临床试验结果

第一步,收集文献资料提取数据,得到每一个研究的四格表资料如表2。

第二步,在Stata中录人数据。Windows版本的Stata提供了数据编辑工具editor,为数据的输入提供了便利。在Stata命令窗口(StataCommand)中键入edit或在StataData菜单栏中单击Dataeditor,即可进入Stata的数据编辑器,按列输入数据,见图2。其中变量study表示纳入的研究,year表示年份,deathl表示Aspirin组的死亡人数,livel表示Aspiring]l的存活人数,death2表示安慰剂组的死亡人数,live2表示安慰剂组的存活人数。

图2Stata9.2数据编辑窗口的界面(例1)

第三步,进行Meta分析。Stata命令如下:

metandeathlliveldeath2live2,orlabel(namevar=study,yearvar=year)

第四步,检验发表偏倚。

Stata命令如下:

generatelogor=log(.ES、)

generateselogor=_selogES

metabiaslogorselogor,graph(begg)

Stata产生的森林图和漏斗图如图3和图4。

;o

oddsratio

图3森林图(例1)

Begg_sfunnelplotwithOseudO95%con*dencelimits

%Weight

106132

101131

106157

132118

115、32

1371’02

097)729

096)1000

s自of:logor

图4漏斗图(例1)

结果显示Aspirin有预防心肌梗塞后死亡的作用.和RevMan的结果一致。

例2N]Gotzsche收集了有关短程小剂量强的松VS.安慰剂或非甾体抗炎药治疗类风湿性关节炎的7个临床随机对照试验(RCTs),观察类风湿性关节炎患者的关节压痛指数(rechie’Sindex)。数据如表3。

表37个研究类风湿性关节炎患者关节压痛指数

Jasni1968

Dick1970

Lee1973

Berry1974

Lee1974

Stenberg1992

Geital1995

916.28.7

2417.68.0

2l30.516.5

1213.011.O

1814.612.4

2l6.31.7

2010.84.7

938.112.8

2440.713.0

2141.419.8

1223.711.1

1826.415.1

2111.12.5

2016.37.7操作步骤:

第一步,收集文献资料提取数据,得到每一个研究的四格表资料.见表3。

第二步。在Stata中录人数据。其中变量study表示纳入的研究,year表示年份,n1表示试验组的样本含量。meanl表示试验组的均数,sdl表示试验

藿I如

雪|

w 万方数据

柏建岭,等.Stata在Meta分析中的应用367组的标准差,n2表示对照组的样本含量,mean2表

示对照组的均数,sd2表示对照组的标准差,见图5。

图5Stata9.2数据编辑窗口的界面(例2)

第三步,进行Meta分析。Stata命令如下:

metannlmeanlsdln2mean2sd2,label

(namevar=study,yearvar=year)randomboxsca(0.5)

xlabel(-5,5)

Stata中的森林图如图6。

Stan

(6s)—1卜?20C’o)tl..1q

3);__●-0.6C74)斗.O974)—■卜?O8£(1992)—■卜-l.22£

》鲇)鲁-0.8E

◇.13_

图6森林图(例2)meandifference%Weight

.85)10.4

43114.9

02)160

.121135

171’5.3

47114.2

21)157

.8011000

结果显示短程小剂量强的松有减少类风湿性关节炎患者的关节压痛指数的作用,和RevMan的结果一致。

例3(LungCancer))2005年第47卷第1期“健择(吉西他滨)加铂类化疗与其他含铂方案治疗晚期非小细胞肺癌的疗效比较:关于生存结果的Meta分析”收集17个相关研究[5],文中提供了效应值及其可信区间(原始数据略)。

第一步,收集文献资料提取数据,得到每一个研究的风险比(hazardratio,HR)和方差(variance)。对于生存分析的资料,其风险比和方差可以通过实际数(O)和期望数(E)直接得到,也可以通过可信区间间接得到[引。

第二步。在Stata中录入数据。其中变量studyid表示纳入的研究,group表示分组,group=1表示第一和第二代含铂类药物亚组,group=2表示第三代含铂类药物亚组。hT表示HR,II表示95%可信区间上限,ul表示95%可信区间下限,如图7。

图7Stata9.2数据编辑窗口的界面(例3)

第三步,产生风险比及95%可信区间的对数值。由于在Meta分析中,通常要求效应差异度量(effectsize)的对应样本统计量近似服从正态分布。效应指标为风险比。其效应差异度量为风险比的对数值。

Stata命令如下:

genInhr=In(hr)/术产生hr的对数值

genlnll=ln(11)/米产生ll的对数值

genlnul=In(u1)/水产生ul的对数值

第四步,进行Meta分析。

Stata命令如下:

metanlnhrlnUlnul,eformlabel(namevar:studyid)boxsca(O.9)randomby(group)xlabel(0.5,1,1.5)effect(“HR”)

第五步,检验发表偏倚。

Stata命令如下:

metabiashrIIul,cigraph(begg)

Stata中的森林图和漏斗图如图8和图9。

图8森林图(例3)

%Weight

110)37

133159

0.93)1¥

0911106

81

5,7

0 万方数据

368循证医学2007年第7卷第6期

Be991Sfunnelplotwithpseudo95%confidencelimits

图9漏斗图(例3)

结果显示健择(吉西他滨)加铂类化疗治疗晚期非小细胞肺癌风险略低于其他含铂方案.和RevMan的结果一致。5结语

很多人会问及Meta分析选择哪个软件是最好的。其实各个软件都有自己独特的风格,也难免有其软肋。RevMan易用性强,可以实现统计和系统评价书写的整合,但灵活性欠佳:RevMan仅通过漏斗图直观地判断有无发表偏倚,而Stata软件除了漏斗图外,还可以用Begg’s检验、Egger’s检验来检验发表偏倚。Stata还有数据处理、亚组异质性检验和Meta回归分析等功能,而RevMan中不能实现(表4)。Stata较好地实现了简便和复杂两者的结合,尽管易学,它在数据管理和许多前沿统计方法中的功能还是非常强大的。用户可以很容易地下载到别人已有的程序,也可以自己去编写.并使之与Stata紧密结合。目前,Stata软件是Meta分析备受推崇的软件,国外高质量杂志更倾向于接收StataMeta分析图形界面。

表4Stata软件和RevMan软件在Meta分析中的功能比较

功能StataRevman功能StataRevmanOddsratioContinuousdata

Mantel—Haenszel

、/、/WMD、√~

Inverse—variance、/、/(genericI-V)SMDVV

PetooddsraftoV、/Dataformats

supposed

DerSimonian&Laird、/、/CellcountsabcdVV

RiskratioEstimate&SEV、/Mantel—Haenszel、/、/Estimate&CI、/XInverse.variance、/X/(genericI-V)DoubledataentryXVDerSimonian&Laird、/VDatamanipulationVX

RiskdifferenceGraphicalmanipulationVX/(1immted)Mantel—Haenszel、/、/ForestplotVV[nverse.variance~~(genericI-V)TestforheterogeneityVVDerSimonian&Laird、/、/I:、/、/

PublicationbiasStratifiedforestplotV、/FunnelplotsVVTestforheterogeneitybetweenstrata、/XBegg’Stest、/XMeta—regression

、/XEgger'stestX/XL'Abbeplot

、/XTrimandfill、/×Galbraithplot、/×[参考文献]

『1]陈峰主编.现代医学统计方法与Stata应用[M].第2版.

北京:中国统计出版社,2003.

[2]EggerM,DaveySG,AltnmnDG.Systematicreviewsinhealth

care:Meta.analysisin

context[U1.London:BMJbooks,2001.

[3]FleissJL,GrossAJ.Meta-analysisinepidemiology,with

specialreferencetostudiesoftheassociationbetweenexposure

toenvironmentaltobaccosmokeandlungcancer:A

critique

[J].JClinEpidemiol,1991,44:127-139.

[4]GotzschePC,JohansenHK.Meta—analysisofshorttermlowdoseprednisoloneversusplaceboandnon—steroidalanti一

州船岫一

:{|蒯

¨

呐~删(量

一~

廿

Ⅱ,

_蠢_蚕

一山

乱篡删

一㈣叭引

一~~~

~~一一

盯.呈.¨

_

q山

叭龇啪

~举黑篇一

.耋

(;|‰"如

州吣删

蛔&¨M一~m黼一脚

趴Ⅲm㈨∞Ⅲ口

~一~~一一~一

 万方数据

相关主题