对于我的项目,我需要同时运行许多不同但相似的模型,因为只有一个变量发生了变化,我想让这个过程尽可能简单和耗时(我的 R 脚本此时很长...... )
data(mtcars)
Model1 <- formula(mpg ~ cyl + disp)
Model2 <- formula(mpg ~ cyl + hp)
Model3 <- formula(mpg ~ cyl + wt)
Model4 <- formula(mpg ~ cyl + qsec)
All.Models <- cbind(Model1, Model2, Model3, Model4)
有没有办法在模型函数(lm()、aov() 等)上运行所有公式,特别是 All.Models 并指定数据集(这里是在 mtcars 上,但我有不同的数据集)楷模)?
我尝试了以下两个版本:
All.Ouput1 <- lm(lapply(All.Models), data=mtcars)
或者
All.Output2 <- lapply(All.Models, lm(All.Models, data=mtcars))
在第一个中它运行了几分钟,直到我不得不手动停止它,第二个给我一个错误
还有str(All.Models)
一个列表,其中模型需要 3 行
str(All.Models)
List of 12
$ : symbol ~
$ : symbol mpg
$ : language cyl + disp
$ : symbol ~
$ : symbol mpg
$ : language cyl + hp
$ : symbol ~
$ : symbol mpg
$ : language cyl + wt
$ : symbol ~
$ : symbol mpg
$ : language cyl + qsec
- attr(*, "dim")= int [1:2] 3 4
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:4] "Model1" "Model2" "Model3" "Model4"
先感谢您