说有一个向量x:
x <- c("a", " ", "b")
我想快速将其变成单个字符串“a b”。有没有办法在没有循环的情况下做到这一点?我知道循环可以做到这一点:
y <- ""
for (i in 1:3){
paste(y, x[i], sep = "")
}
> y
[1] "a b"
但是我需要在很多次迭代中执行此操作,并且必须循环使用这个并且每次用新的替换原始将变得非常耗时。我总是希望能够做到这样的事情:
x <- paste(x)
好像paste()可以巧妙地将矢量本身的元素分开,但我知道它不能。是否有其他功能,或更有创意的方式来使用paste(),这可以有效地实现这一目标?
答案 0 :(得分:76)
您只需要使用collapse
参数:
paste(x,collapse="")
答案 1 :(得分:1)
只需添加一种tidyverse
方式即可提供使用paste()
的替代方法:
library(glue)
x <- c("a", " ", "b")
glue_collapse(x)
#> a b
由reprex package(v0.3.0)于2020-10-31创建