我需要这行代码完全相同的输出,
> paste('"a"','"b"')
[1] "\"a\" \"b\""
但我需要&#34; b&#34;成为一个在每次迭代中都会发生变化的变量,所以假设我有x <-"b", paste('"a"',x)
或我试过的任何其他方式都没有给我想要的输出,这是
> paste('"a"','"b"')
[1] "\"a\" \"b\""
提前致谢!
OM
答案 0 :(得分:5)
使用sprintf
x <- "b"
sprintf('"a" "%s"', x)
# [1] "\"a\" \"b\""
答案 1 :(得分:2)
如果您使用的是变量,则必须手动用双引号括起来。您可以使用额外的粘贴来执行此操作
> x <- "b"
> paste('"a"', paste('"', x, '"', sep=''))
[1] "\"a\" \"b\""
答案 2 :(得分:2)
必须有更好的方法,但这有效:
x<-paste0('"',"b",'"',collapse = "")
paste('"a"',x)
[1] "\"a\" \"b\""
答案 3 :(得分:1)
使用函数执行此操作的一种方法是:
quote_me <- function(...) paste0('"', unlist(list(...)), '"')
x <- "b"
quote_me("a", b)
#[1] "\"a\"" "\"b\""