【发布时间】:2019-05-02 14:21:14
【问题描述】:
我有一个接受数据框的函数,第一列必须是 Y,用户选择哪一列是 X。我需要在同一个 data.frame 中运行多个线性模型(找到哪个 lm 有最好的结果为我的用户)。
使用 mtcars 数据集,我只有一个线性模型:
results_LM <- function(data, var) {
fm1 <- as.formula(paste(colnames(data)[1], "~", var))
lm1(fm, data = data)
return(lm1)
}
fit <- results_LM(mtcars, "disp")
我将对每个要测试的线性模型执行相同的操作(并存储在我稍后会使用的最终列表中):
results_LM <- function(data, var) {
fm1 <- as.formula(paste(colnames(data)[1], "~", var))
lm1(fm, data = data)
fm2 <- as.formula(paste(colnames(data)[1], "~", var, "+ I(", var, "^2)"))
lm2(fm, data = data)
all_lm <- list("FirstLM" = lm1, "SeconLM" = lm2)
return(all_lm)
}
fm3, lm3... fm99, lm 99
这可行,但我想这是一种更好的方法
关于如何在同一个数据框中运行多个线性模型有什么想法吗?
【问题讨论】: