web-dev-qa-db-ja.com

ループを使用せずにRのベクトルの要素を貼り付ける方法はありますか?

ベクトルxがあるとします。

x <- c("a", " ", "b")

これをすぐに1つの文字列「a b」に変換したいと思います。ループなしでこれを行う方法はありますか?私はこれを行うことができるループで知っています:

y <- ""
for (i in 1:3){
    paste(y, x[i], sep = "")
}

> y
[1] "a b"

しかし、これを何度も何度も繰り返す必要があり、これをループして元のファイルを新しいものと置き換えるたびに非常に時間がかかります。私はいつもこのようなことをできるようにしたい:

x <- paste(x)

paste()はベクトル自体の要素をスマートに分割できるように見えますが、できないことはわかっています。これを効率的に達成できる別の関数、またはpaste()を使用するより創造的な方法はありますか?

37
Max

collapse引数を使用するだけです:

paste(x,collapse="")
81
joran