0

我正在做元分析研究并且非常喜欢 R 中的 metafor 包。但是,为了能够利用 R 可以做的所有伟大的事情,例如在嵌套的 data.frame 中管理许多不同的模型(感谢 Hadley Wickham 和 David Robinson)我需要能够将 metafor 包 rma()-models 的输出与扫帚一起使用。

有人现在如何做到这一点。我知道扫帚(还)不支持开箱即用的事实,但非常感谢到目前为止的解决方法。

非常感谢!

4

1 回答 1

2

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
于 2016-05-25T14:53:22.173 回答