具有动态因子-R的动态公式
我以这个例子()为例,恳请您对这个问题进行扩展具有动态因子-R的动态公式,r,rstudio,formula,R,Rstudio,Formula,我以这个例子()为例,恳请您对这个问题进行扩展 factors <- c("factor1", "factor2") as.formula(paste("y~", paste(factors, collapse="+"))) # y ~ factor1 + factor2 factors tryreformate(factors,“y”)感谢您的回复,我可能需要一个循环来更改factors数组,否则我需要为每个规范嵌套太多其他内容 specification_vec <- c(0,
factors <- c("factor1", "factor2")
as.formula(paste("y~", paste(factors, collapse="+")))
# y ~ factor1 + factor2
factors tryreformate(factors,“y”)
感谢您的回复,我可能需要一个循环来更改factors数组,否则我需要为每个规范嵌套太多其他内容
specification_vec <- c(0,1,2,3)
for (sp_vec in specification_vec){
specification_sel <- sp_vec
core_spec <- c("factor1core", "factor2core", "factor3core", "factor4core" ) # ->0
base1_spec <- c(core_spec, "factor5","factor6","factor7") #->1
base2_spec <- c(core_spec, "factor8","factor9","factor10") #->2
base3_spec <- c(base2_spec, "factor15") #->3
#tried solution Not Working
if (specification_sel == 0){
Eqfor <- as.formula(paste("y~", paste(core_spec, collapse = "+")))
} else if (specification_sel == sp_vec) {
Eqfor <- as.formula(paste("y~", paste(paste0("base",sp_vec,"_vars"), collapse="+")))
}
#lot of other stuff
} #this closes the loop
specification_vec <- c(0,1,2,3)
for (sp_vec in specification_vec){
specification_sel <- sp_vec
core_spec <- c("factor1core", "factor2core", "factor3core", "factor4core" ) # ->0
base1_spec <- c(core_spec, "factor5","factor6","factor7") #->1
base2_spec <- c(core_spec, "factor8","factor9","factor10") #->2
base3_spec <- c(base2_spec, "factor15") #->3
#Working
if (specification_sel == 0){
Eqfor <- as.formula(paste("y~", paste(core_spec, collapse = "+")))
} else if (specification_sel == sp_vec) {
Eqfor <- reformulate(eval(parse(text = paste0("base",sp_vec,"_spec"))), "y")
}
#lot of other stuff
print(Eqfor)
} #this closes the loop