在 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)
})
我想更改变量(表示数据框列),它是公式的一部分,用于循环此公式。重要的是我现在想插入一个变量,因为我想稍后使用这个变量,然后才将它更改为另一个变量(所以,我猜“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)
})