我正在进行荟萃分析研究,并且非常喜欢R中的metafor包。 但是,为了能够利用你可以用R做的所有伟大的事情,例如在嵌套的data.frame中管理许多不同的模型(感谢Hadley Wickham和David Robinson)我需要能够使用metafor包中的输出rma() - 带扫帚的模型。
现在有人如何做到这一点。我知道它在扫帚中尚未开箱即用,但非常感谢到目前为止的解决方法。
非常感谢!
答案 0 :(得分:2)
这是为tidy
创建可以处理rma
类对象的新方法的一个非常基本的示例:
tidy.rma <- function(x) {
return(data.frame(summary(x)$fit.stats))
}
这会为函数rma
创建方法tidy
,我们会定义它以返回包含data.frame
对象的拟合统计信息的rma
。
您可以使tidy.rma
函数返回一个data.frame
类型对象,其中包含您认为合适的任何数据。请注意,你可以让它回归你最喜欢的哟&#39;妈妈开玩笑并且它与输入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)
提供适合统计数据的漂亮data.frame:
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