搜索
您的当前位置:首页正文

HR值及其可信区间的网络meta分析(R软件gemtc程序包)

来源:意榕旅游网
HR值及其可信区间的⽹络meta分析(R软件gemtc程序包)

没有什么能够阻挡,你对⾃由的向往。——前记

⼤家好,我是⼀个⽹络meta分析爱好者,很⾼兴借freescience这个平台,和⼤家见⾯。我们知道肿瘤学的研究,HR是⾮常重要的指标,它既包括事件,也涵盖了时间因素。因此,⼏乎每个关于肿瘤药物的⽣存率事件都报告了HR值及其上下可信区间。如果能利⽤这些现成的HR值及其可信上下区间的数据类型进⾏⽹络meta分析,⽆疑对研究意义重⼤。那么这类meta分析该如何实现呢?接下来让郭哥和⼤家⼀起来挖掘gemtc程序包。打开R 软件,安装“gemtc”、”jags”程序包#输⼊加载程序包的命令library('gemtc')library('rjags')

#建⽴数据

# Create a new network by specifying allinformation.treatments <>id description1 'Treatment A'2 'Treatment B'3 'Treatment C'

4 'Treatment D''), header=TRUE)data <->

study treatment diff std.err1 1 1.058 1.6541 2 NA NA2 1 0.005 0.6352 2 NA NA3 1 -0.409 1.6403 2 NA NA4 1 0.273 1.6424 2 NA NA5 3 -0.159 0.6125 1 NA NA6 3 0.027 0.7136 1 NA NA7 3 -1.138 1.1587 1 NA NA8 3 -0.029 1.4178 1 NA NA9 3 -0.154 0.0709 2 -0.209 0.0729 1 NA 0.0669 4 0.055 0.064'), header=TRUE)

#构建⽹络

network <- mtc.network(data.re=\"data,description='Example',\" treatments=\"\">#制作⽹络图plot(network)

#建⽴模型

model<-mtc.model(network,type='consistency', factor=\"\">

#设置参数,进⾏运算

results <- mtc.run(model,=\"\" n.adapt=\"10000,\" n.iter=\"100000,\" thin=\"10,sampler\">

#输出森林图

forest(relative.effect(results,'1'))

#输出排序结果

rank.probability(results,preferredDirection=-1)

OK,Gemtc程序包实现HR数据类型的⽹络meta分析运⾏结束接下来倒过来讲这个数据集的数据是如何得来的

我们之前讲到⼤部分研究会直接给出HR值及其可信上下区间。在做传统meta分析时,这类数据类型是可以进⾏合并的,只要将这类数据转换为效应值的对数值(InHR)以及标准误(SE)即可。同样的,⽹络meta分析亦是如此。所以这个数据集需要diff(InHR)和std.err(SE)两列数据。

如果是双臂的临床试验,根据HR及其上下区间即可计算出InHR和SE了(InHR⼤家都懂,SE=。。。。)。然后将基础臂(basearm),也叫对⽐组,设置为NA,这样就有了诸如以上的数据类型1 1 1.058 1.6541 2 NA NA

第⼀列的“1”表⽰第⼀个研究,第⼆类的数据表⽰治疗⼲预措施的代号(1表⽰Treatment A,2表⽰TreatmentB)。将Treatment B作为基础臂,所以都标记为NA,然后1.058和 1.654 分别为该研究的diff和std.err。

如果是两臂以上的多臂试验,情况就不⼀样了 看以下数据9 3 -0.154 0.0709 2 -0.209 0.0729 1 NA 0.0669 4 0.055 0.064

以1作为⼲预措施,diff标注为NA。问题来在于,为什么std.err这⼀列不是NA,⽽是0.066呢?

答案还得从这篇逆天的⽂章说起

为什么说它逆天呢?因为它提出了将HR和OR数据合在⼀起进⾏⽹络meta分析的壮举!⽽活学活⽤的⼈,将它的⽅法继续发扬光⼤,从⽽改良出了实现了HR数据类型的⽹络meta分析。

⽂中列举了这么⼀串数据。表格中In(HR)就是指diff,se(In(HR))则是指两个⼲预措施之间的SE。(注意两个⼲预措施之间的SE不是std.err,后者是指每个⼲预措施的)⽽每个⼲预措施的std.err则需要进⼀步转换。使⽤如下公式:

seb指⼲预措施b对应的se。sek,b则是指⼲预措施k和b之间的se。

OK,那么根据公式7 我们就可以计算出:

placebo的SE(std.err) =[(se2 SFC, placebo+ se2 Salmeterol,placebo- se2 SFC ,Salmeterol)/2]1/2 =[(0.0982+0.0962-0.12)/2]1/2=0.066

这也就是为什么placebo作为基臂,对应的std.err是0.066的原因。

根据公式8可以计算出:

SFC的SE(std.err) =(se2 SFC, placebo - se2 placebo)1/2=(0.0982-0.0662) 1/2=0.072同样的可以计算出Salmeterol的SE为0.070,Fluticasone的SE为0.063。因此也就有了如下的数据了:9 3 -0.154 0.0709 2 -0.209 0.0729 1 NA 0.0669 4 0.055 0.064

就这样,Gemtc程序包实现HR数据类型的⽹络meta分析就策到这⾥吧。

META专栏主编

猴哥:Freescience公众号meta分析栏⽬现任主编。副主任医师,武汉⼤学肿瘤学博⼠,专注于胃肠道肿瘤分⼦⽣物学机制、系统评价/Meta分析、数据挖掘、临床统计研究。

科研路,不孤单!

Freescience医学科研联盟全国⽕热招募ing50家⾼校及医院的⼩伙伴已经加⼊啦具体点这⾥具体点这⾥

想围观⼀篇SCI论⽂是怎样写成的吗?Freescience线上沙龙之SCI论⽂合作呼唤你具体点这⾥

FS科研软件库,集合50+医学科研必备神器,现在统统打包分享,医学科研必备神器,现在统统打包分享,点这⾥

还有Freescience科研交流群

因篇幅问题不能全部显示,请点此查看更多更全内容

Top