虽然R里面的survminer
提供了ggforest
函数来创建一个关于HR的森林图,但是它貌似只能应用于单个模型的分析,其实森林图的使用在元分析非常普遍。在我最近阅读的新英格兰杂志和柳叶刀文章中广泛使用了forest图形,而且排版惊人一致!我现在终于知道它们都用是用的stata
软件绘制,虽然我不是很懂这个流行的统计分析软件,但是查找下资料画个图还是没问题的。
下面用例子演示:
在命令行输入数据:
clear
input coef lci uci str20 group str20 subpopulation
.1266349 -.3146492 .5679189 Group1 Sub1
-.3509529 -1.023146 .3212402 Group2 Sub1
.08614 -.2777374 .4500174 Group1 Sub2
-.0951817 -.358211 .1678475 Group2 Sub2
-.0707719 -.4005753 .2590315 Group1 Sub3
-.1216107 -.3963165 .1530952 Group2 Sub3
.1412438 -.3248311 .6073186 Group1 Sub4
-.260193 -.5850677 .0646817 Group2 Sub4
-.1227866 -.5573016 .3117283 Group1 Sub5
-.0232415 -.2844573 .2379743 Group2 Sub5
end
输入绘图命令:
label define refsubpop 1 "Sub3" 2 "Sub1" 3 "Sub2" 4 "Sub4" 5 "Sub5"
encode subpopulation, gen(subpop)
label values subpop refsubpop
codebook subpop
metan coef lci uci, lcols(subpop) by(group)
效果:
森林图改成Hazard Ratio
HR代码:
clear
input coef lci uci str20 group str20 subpopulation
.1266349 -.3146492 .5679189 Group1 Sub1
-.3509529 -1.023146 .3212402 Group2 Sub1
.08614 -.2777374 .4500174 Group1 Sub2
-.0951817 -.358211 .1678475 Group2 Sub2
-.0707719 -.4005753 .2590315 Group1 Sub3
-.1216107 -.3963165 .1530952 Group2 Sub3
.1412438 -.3248311 .6073186 Group1 Sub4
-.260193 -.5850677 .0646817 Group2 Sub4
-.1227866 -.5573016 .3117283 Group1 Sub5
-.0232415 -.2844573 .2379743 Group2 Sub5
end
label define refsubpop 1 "Sub3" 2 "Sub1" 3 "Sub2" 4 "Sub4" 5 "Sub5"
encode subpopulation, gen(subpop)
label values subpop refsubpop
codebook subpop
metan coef lci uci, effect(Hazard Ratio) lcols(subpop) by(group)
参考:
https://www.statalist.org/forums/forum/general-stata-discussion/general/1374722-how-to-stratify-results-in-a-forest-plot-by-two-variables
https://stats.stackexchange.com/questions/15025/how-to-combine-two-hazard-ratios-from-the-study-for-a-meta-analysis
网友评论