我在R中有一个功能,比如说
myfunction <- function(formula,data)
除此之外,该函数还包含对lm()的调用。公式应包括协变量,并应指定为
公式= x1 + x2 + ... + x_n
数据包含Z和W列,其中包含响应
y=data$Z/data$W
我只想要包含协变量的公式,因为函数会修改每次迭代的响应变量。
lm()的调用应该与
一起使用lm(y~formula,data=data)
答案 0 :(得分:1)
myfunction
中传递整个公式比较清晰,例如:
myfunction <- function(formula,data) {
data = data*2 # this is an example of data manipulation
lm(formula=formula, data=data)
}
然后使用myfunction
,就像使用lm
如果您真的想要创建复杂性(什么都不是?),您还可以使用lm
强制将string
作为参数传递给适当的formula
对象的事实
myfunction2 <- function(formula2,data) {
data = data*2 # this is an example of data manipulation
lm(formula=paste0("y~",formula2), data=data)
}