【发布时间】:2019-07-26 11:39:58
【问题描述】:
我创建了代码以使用不同的变量多次运行 lm 命令:
DVs <- c('mpg', 'wt')
lapply(DVs, function(x)
lm(substitute(scale(DV) ~ scale(disp)+scale(qsec), list(DV = as.name(x))), data=mtcars))
但是,我希望能够创建一个嵌套循环,以迭代另一个变量。我曾经尝试过的代码是:
DVs <- c('mpg', 'wt')
IVs <- c('disp', 'hp')
lapply(DVs, function(x) lapply(IVs, function(y)
lm(substitute(substitute(scale(DV) ~ scale(IV)+scale(qsec), list(DV = as.name(x)), list(IV = as.name(y)), data=mtcars)))))
但是这会导致错误:
替代错误(scale(DV) ~ scale(IV) + scale(qsec), list(DV = as.name(x)), : 未使用的参数 (list(IV = as.name(X[[i]])), data = 山地车)
我怎样才能使这个嵌套循环工作?
【问题讨论】:
-
也许看看
reformulate(),例如here. -
成功了,谢谢!