1
在R中,我有兩個字符串和一個包含多個字符串的向量。如何使用粘貼獲得公式
str1 <- "this_guy"
str2 <- "that_guy"
strvec <- c("str3", "str4", "str5")
我怎麼能貼上這些結合在一起,使我得到:
"str1 + str2 + str3 + str4 + str5"
糊的直接應用()如
不起作用
在R中,我有兩個字符串和一個包含多個字符串的向量。如何使用粘貼獲得公式
str1 <- "this_guy"
str2 <- "that_guy"
strvec <- c("str3", "str4", "str5")
我怎麼能貼上這些結合在一起,使我得到:
"str1 + str2 + str3 + str4 + str5"
糊的直接應用()如
不起作用
我我不確定你的意思(名字或向量),所以這裏都是。您可以使用ls
從全局環境或mget(ls(...))
拍攝模式str[0-9]+
獲得實際的字符串,即
paste(c(ls(pattern = 'str[0-9]+'), strvec), collapse = ' + ')
#[1] "str1 + str2 + str3 + str4 + str5"
paste(c(mget(ls(pattern = 'str[0-9]+')), strvec), collapse = ' + ')
#[1] "this_guy + that_guy + str3 + str4 + str5"
更好的使用'reformulate'。 – lmo
可能的重複:https://stackoverflow.com/questions/4951442/formula-with-dynamic-number-of-variables和https://stackoverflow.com/questions/9238038/passing-a-vector-of-variables-進入lm公式。 – lmo