用粘贴写出公式

时间:2015-01-11 09:41:02

标签: r formula paste

有一个向量(称为f)

f
3 4 8

它指示数据框(y)中的哪些列应包含在模型中。这些列的列名是FER7,TOJ9,GHY11。有人可以告诉我如何实现这一目标

response~factor(FER7)+factor(TOJ9)+factor(GHY111)

用糊状物或类似物。然后我只需要将它作为.formula并将其提供给函数。有一种方法但我暂时没有看到它

1 个答案:

答案 0 :(得分:1)

你可以尝试

 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')