我必须拟合几个元回归模型,我试图编写一个 for 循环,其中不同的变量名称被传递给 escalc 函数。
任务如下所示:
library(metafor)
dat <- get(data(dat.bcg))
some_vars<-c("tpos","tneg","cpos","cneg")
dat <- escalc(measure="RR", ai=some_vars[1], bi=some_vars[2], ci=some_vars[3], di=some_vars[4], data=dat)
但是,此操作失败并显示错误。
如何将变量名称传递给 escalc?
有点丑,但这应该有效:
dat <- escalc(measure="RR", ai=eval(parse(text=some_vars[1])),
bi=eval(parse(text=some_vars[2])),
ci=eval(parse(text=some_vars[3])),
di=eval(parse(text=some_vars[4])), data=dat)