是否有人使用这些包来创建比例的森林图 - 其中每个研究显示的比例和95%CI是一个简单的比例,具有精确的二项式95%CI,并且包计算一个汇总的加权比例 - - 显示在底部? 可以选择汇集方法吗?
答案 0 :(得分:2)
在metafor
中,可以通过计算" exact"来完成。 95%CI使用binom.test()
函数,然后将这些边界传递给forest()
。有各种各样的模型可以用来汇总比例,所以我不确定你要找哪一个,但是"二项式 - 正常"模型(基本上是随机效应逻辑回归模型)通常是一个不错的选择。这可以使用rma.glmm()
。然后可以使用addpoly()
函数将结果添加到森林图中。这是一个例子:
library(metafor)
dat <- data.frame(id = 1:5, xi = c(2, 5, 3, 10, 6), ni = c(20, 25, 15, 40, 30))
dat <- escalc(measure="PR", xi=xi, ni=ni, data=dat)
tmp <- t(sapply(split(dat, dat$id), function(x) binom.test(x$xi, x$ni)$conf.int))
dat$ci.lb <- tmp[,1]
dat$ci.ub <- tmp[,2]
res <- rma.glmm(measure="PLO", xi=xi, ni=ni, data=dat)
par(mar=c(5,4,1,2))
with(dat, forest(yi, ci.lb=ci.lb, ci.ub=ci.ub, ylim=c(-1.5,8), xlim=c(-.5,1), refline=predict(res, transf=transf.ilogit)$pred))
addpoly(res, row=-1, transf=transf.ilogit)
abline(h=0)
text(-0.5, 7, "Study", pos=4)
text( 1, 7, "Proportion [95% CI]", pos=2)
模型(res
)的结果是:
Random-Effects Model (k = 5; tau^2 estimator: ML)
tau^2 (estimated amount of total heterogeneity): 0
tau (square root of estimated tau^2 value): 0
I^2 (total heterogeneity / total variability): 0.00%
H^2 (total variability / sampling variability): 1.00
Tests for Heterogeneity:
Wld(df = 4) = 1.7806, p-val = 0.7760
LRT(df = 4) = 2.0582, p-val = 0.7251
Model Results:
estimate se zval pval ci.lb ci.ub
-1.3863 0.2193 -6.3225 <.0001 -1.8160 -0.9565 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
由此产生的森林地块: