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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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 description
1 'Treatment A'
2 'Treatment B'
3 'Treatment C'
4 'Treatment D''), header=TRUE)
data <->
study treatment diff std.err
1 1 1.058 1.654
1 2 NA NA
2 1 0.005 0.635
2 2 NA NA
3 1 -0.409 1.640
3 2 NA NA
4 1 0.273 1.642
4 2 NA NA
5 3 -0.159 0.612
5 1 NA NA
6 3 0.02
7 0.713
6 1 NA NA
7 3 -1.138 1.158
7 1 NA NA
8 3 -0.029 1.417
8 1 NA NA
9 3 -0.154 0.070
9 2 -0.209 0.072
9 1 NA 0.066
9 4 0.055 0.064
'), header=TRUE)
#构建⽹络
network <- work(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.654
1 2 NA NA
第⼀列的“1”表⽰第⼀个研究,第⼆类的数据表⽰治疗⼲预措施的代号(1表⽰Treatment A,2表⽰TreatmentB)。

将Treatment B作为基础臂,所以都标记为NA,然后1.058和 1.654 分别为该研究的diff和std.err。

如果是两臂以上的多臂试验,情况就不⼀样了
看以下数据
9 3 -0.154 0.070
9 2 -0.209 0.072
9 1 NA 0.066
9 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.070
9 2 -0.209 0.072
9 1 NA 0.066
9 4 0.055 0.064
就这样,Gemtc程序包实现HR数据类型的⽹络meta分析就策到这⾥吧。

META专栏主编
猴哥:Freescience公众号meta分析栏⽬现任主编。

副主任医师,武汉⼤学肿瘤学博⼠,专注于胃肠道肿瘤分⼦⽣物学机制、系统评价/Meta分析、数据挖掘、临床统计研究。

科研路,不孤单!
Freescience医学科研联盟全国⽕热招募ing
50家⾼校及医院的⼩伙伴已经加⼊啦
点这⾥
具体
具体点这⾥
想围观⼀篇SCI论⽂是怎样写成的吗?
Freescience线上沙龙之SCI论⽂合作呼唤你
具体点这⾥
医学科研必备神器,现在统统打包分享,,点这⾥
FS科研软件库,集合50+医学科研必备神器,现在统统打包分享
还有Freescience科研交流群。

相关文档
最新文档