R 用浆糊写出公式

R 用浆糊写出公式,r,formula,paste,R,Formula,Paste,有一个向量(称为f) 它指示数据帧(y)中的哪些列应包含在模型中。这些列的列名是FER7、TOJ9、GHY11。有人能告诉我怎样才能做到吗 response~factor(FER7)+factor(TOJ9)+factor(GHY111) 用浆糊或类似的东西。然后,我只需要将其设为.formula并将函数提供给它。有一种方法,但我现在看不到,你可以试试 as.formula(paste0('response~', paste('factor', '(', name

有一个向量(称为f)

它指示数据帧(y)中的哪些列应包含在模型中。这些列的列名是FER7、TOJ9、GHY11。有人能告诉我怎样才能做到吗

response~factor(FER7)+factor(TOJ9)+factor(GHY111)
用浆糊或类似的东西。然后,我只需要将其设为.formula并将函数提供给它。有一种方法,但我现在看不到,你可以试试

 as.formula(paste0('response~', paste('factor',
              '(', names(y)[f],')', sep="",collapse="+")))
 #response ~ factor(FER7) + factor(TOJ9) + factor(GHY111)
数据
f
 as.formula(paste0('response~', paste('factor',
              '(', names(y)[f],')', sep="",collapse="+")))
 #response ~ factor(FER7) + factor(TOJ9) + factor(GHY111)
f <- c(3,4,8)
set.seed(24)
y <- as.data.frame(matrix(sample(1:100, 9*10, replace=TRUE), ncol=9) )
colnames(y) <- c('response', 'T1', 'FER7', 'TOJ9', 'TOJ10',
                  'TOJ11', 'TOJ12', 'GHY111', 'GHY12')