在 R 中的循环中更改公式中的变量名称

Changing a variable name within the formula in a loop in R

我想更改变量(表示数据框列),它是公式的一部分,用于循环此公式。重要的是我现在想插入一个变量,因为我想稍后使用这个变量,然后才将它更改为另一个变量(所以,我猜“lapply”和一个变量列表不会是解决方案吗?)

svychisq(~var1 + strata, svy_design)

我需要在循环/函数中更改此 var1(列名)

获取向量中的所有变量并使用sprintf/paste0创建公式对象。

library(survey)

cols <- c('var1', 'var2')
#If you want all the variables that have 'var' in it. 
#cols <- grep('var', names(df), value = TRUE)
result <- lapply(cols, function(x) {
  svychisq(as.formula(sprintf('~%s + strata', x)), svy_design)
})