加入模式:加微信bioinformatics88为好友,备注“加入生信草堂交流群”,在群里注明姓名、单位、研究领域。
征稿邮箱:glb-biotech@zju.edu.cn
详情阅览:一手科研开花,一手赚钱零花
由高校、医院FS公众号和科研技能公众号等百家单位联合创建的科研交流分享平台;联盟的宗旨:“公正至上,自由分享,平等共赢”。欢迎您的关注,让我们共同学习进步。戳这里Freescience联盟公众号原文,请多关注哦~
没有什么能够阻挡,你对自由的向往。——前记
大家好,我是一个网络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.027 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 <- mtc.network(data.re="data,description='Example'," treatments="">->
#制作网络图
plot(network)
#建立模型
model<-mtc.model(network,type='consistency', factor="">-mtc.model(network,type='consistency',>
#设置参数,进行运算
results <- mtc.run(model,="" n.adapt="10000," n.iter="100000," thin="10,sampler">->
#输出森林图
forest(relative.effect(results,'1'))
如果是两臂以上的多臂试验,情况就不一样了
看以下数据
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呢?
答案还得从这篇逆天的文章说起
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分析就策到这里吧。
查看更多......
学术手拉手
联系客服