我需要在 R 中创建线性模型的命名列表。
models=list()
for (tag in tagnames){
expr=paste0(tag," ~ .")
f=formula(expr)
models[tag]=lm(f,df)
}
这是我写的代码;它实际上创建了列表,但显然它是一个不可调用对象的列表列表(即,方法预测不适用于列表的元素)。
如何使列表的元素可用作实际的 lm 对象?
最佳答案
您可以使用lapply
创建模型列表:
models <- lapply(tagnames, function(x) lm(formula(paste0(x, " ~ .")), df))
并指定名称
names(models) <- tagnames
然后对列表元素调用predict
:
predict(models[["name"]])
关于r - 如何在 R 中创建线性模型列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41998349/