假设我有一些模型存储在列表中:
mods <- list()
mods[[1]] <- lm(mpg ~ disp, data = mtcars)
mods[[2]] <- lm(mpg ~ disp + factor(cyl), data = mtcars)
mods[[3]] <- lm(mpg ~ disp * factor(cyl), data = mtcars)
我想用stats::AIC
. 我正在寻找我会从中得到的输出AIC(mods[[1]], mods[[2]], mods[[3]])
,但我希望它能够概括为任意长的列表。我以为
do.call(AIC, mods)
会起作用,但它会返回一些非常冗长且无益的东西。(如果列表已命名,则会导致错误,除非其中一个名称是object
,对应于 的第一个参数AIC
,但随后您将再次获得详细输出。)
失败后do.call
,我开始思考eval(parse())
解决方案,但我想我应该先在这里问。