我正在使用 Metafor 来运行多元荟萃分析。我想预测新主持人的效果,但对于其中一位主持人,我不想输入值本身,但我希望预测函数能够对该主持人进行元分析(在下面的示例中,这是
grade
)
我在这里使用玩具数据集
dat.bangertdrowns2004
。
# load metafor package
library(metafor)
dat <- dat.bangertdrowns2004
# fit model
res <- rma.mv(yi, vi, mods = ~ grade + length + pers - 1, random = ~ 1 | ni, data=dat)
res
# predict
gridpred <- expand.grid(length=4:10, pers=1)
pred.res <- predict.rma(object = res , newmods = as.matrix(gridpred))
当我运行此代码时,我收到错误,因为它提到我需要输入
grade
的值。
Error in predict.rma(object = res, newmods = as.matrix(gridpred)) :
Argument 'newmods' does not specify values for this variable: grade
有没有办法使用predict.rma()来对
length=4:10
和pers=1
的成绩进行荟萃分析?
感谢您的提示,沃尔夫冈! 我根据您发送的链接(https://www.metafor-project.org/doku.php/tips:computing_adjusted_effects)调整了代码,在“附录:使用 emmeans 包”部分。
for (l in 4:10){
sav <- emmprep(res, at=list(length=l, pers=1, grade=c(1:4)))
emm <- emmeans(sav, specs="1", type="response", weights="proportional")
print(emm)
}
现在给出了所有年级每个长度值的平均值,这是你的意思吗?