我正在做元分析研究并且非常喜欢 R 中的 metafor 包。但是,为了能够利用 R 可以做的所有伟大的事情,例如在嵌套的 data.frame 中管理许多不同的模型(感谢 Hadley Wickham 和 David Robinson)我需要能够将 metafor 包 rma()-models 的输出与扫帚一起使用。
有人现在如何做到这一点。我知道扫帚(还)不支持开箱即用的事实,但非常感谢到目前为止的解决方法。
非常感谢!
tidy这是一个非常基本的示例,它创建了一个可以处理rma类对象的新方法:
tidy.rma <- function(x) {
return(data.frame(summary(x)$fit.stats))
}
这会rma为 function创建方法tidy,我们将其定义为返回data.frame包含rma对象拟合统计信息的 a。
您可以改为让tidy.rma函数返回一个data.frame类型对象,其中包含您认为合适的任何数据。rma请注意,您可以让它返回您最喜欢的妈妈笑话,并让它与输入模型对象完全无关。该tidy.rma方法完全由您决定它的作用。
像平常一样使用该tidy功能:
### Example from metafor package:
data(dat.bcg)
dat <- escalc(measure="RR", ai=tpos, bi=tneg, ci=cpos, di=cneg, data=dat.bcg)
mod <-rma(yi, vi, data=dat, method="REML")
### And call tidy()
tidy(mod)
提供拟合统计数据的漂亮数据框:
ML REML
ll -12.68777 -12.20237
dev 37.16141 24.40474
AIC 29.37554 28.40474
BIC 30.50544 29.37456
AICc 30.57554 29.73808