首先你要制作一个Cochrane偏倚风险评估结果,大概长这个样子:
最后一列权重是这个研究的样本量。前面的七个偏移是根据Cochrane手册评估的,详细文件请见链接:https://training.cochrane.org/sites/training.cochrane.org/files/public/uploads/resources/CochraneHandbookChineseDec2014.pdf(186-188页)这是中文版的。
overall这一列我是根据全部是low就评委low,有一个high就评为high,没有high但是有unclear就评为unclear,忘记在哪里看到的,但是不重要因为我后面结果把这一列删掉了,但是表里面必须有因为这个代码需要,不然会报错。
library(robvis)
library(readxl)
library(ggplot2)
rob_tools() ##查看工具有哪些,我这是RCT所以用的ROB1
setwd("F:/文件路径/文件路径/文件路径")
bias<-read_xlsx("bias.xlsx","bias")
data_rob1 ##查看示例数据长啥样,可以按着示例数据整理表格
p<-rob_traffic_light(
data = bias,
tool = "ROB1", # 使用 ROB1 工具
colour = "cochrane", # 使用 Cochrane 的颜色方案
psize = 6, # 设定图标大小
quiet = FALSE # 显示图表
)
然后就可以出图了,如果文献很多可能会很奇怪,但是没关系可能是R里面显示大小问题,导出来高度调高一点就好了。至于文献名字是竖向的我也没搞定,后来是放AI里面调整的。调整之后变成了这样。
突然觉得好丑啊,回头再调一下。。。
# 保存图表为 PDF,尺寸设置为高 12 英寸,宽 6 英寸
ggsave("bias_traffic_light_plot.pdf", plot = p, width = 6, height = 12, units = "in")
#####总结图
最后是绘制总结图,其实就是一个分布条图。
一开始我的代码是这样
rob_summary(bias, "ROB1", overall = FALSE, weighted = T, colour = "cochrane", quiet = FALSE)
Error in rob_summary(bias, "ROB1", overall = FALSE, weighted = T, colour = "cochrane", :
Error. The final column does not seem to contain numeric values (expected for weights).
是的,它会报错权重非数字,但其实它是数值,并且你怎么转换成数值都会报错,所以我干脆就把weighted = T改成F,这样就ok了。
rob_summary(bias, "ROB1", overall = FALSE, weighted = F,
colour = "cochrane", quiet = FALSE)
把它导出即可。