我有一个回归模型列表,它们都具有相同数量的项(即相同数量的预测变量)。实质上,它们都有不同的模型术语是正确的。但是当涉及到将它们放入回归表时,我希望它们所有的模型共享一个公式,只是为了演示。
一些指示性数据
library(plyr)
d1 <- data.frame(y = rnorm(100),
x1 = runif(100),
x2 = runif(100),
x3 = runif(100),
x4 = runif(100))
适合模型
mods.form <- paste("y ~ x", 1:4, sep = "")
mod.list <- llply(mods.form, function(i) lm(i, d1))
这是我要修改的条款
llply(mod.list, function(i) attr(terms(i), "variables"))
[[1]]
list(y, x1)
[[2]]
list(y, x2)
[[3]]
list(y, x3)
[[4]]
list(y, x4)
我希望列表中的每个模型都具有与第一个模型相同的变量名,所以我尝试了:
mod.list2 <- llply(mod.list, function(i) attr(terms(i), "variables") = list("y", "x1"))
提供此错误
Error in attr(terms(i), "variables") = list("y", "x1") :
could not find function "terms<-"
这里有一个简单的解决方案吗?