リストにいくつかのモデルが保存されているとしましょう:
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(リストに名前が付けられている場合、名前の 1 つがの最初の引数に対応するでない限り、エラーが発生しますAICが、詳細な出力が再び得られます。)
の失敗後、解決策do.callを考え始めeval(parse())ましたが、まずはここで質問する必要があると考えました。