2011-07-14 27 views
26

假設有一個向量x:有沒有辦法將R中的矢量元素粘貼在一起而不使用循環?

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(),這可以有效地完成這一點?

回答

57

你只需要使用collapse參數:

paste(x,collapse="") 
+0

謝謝!我一直認爲應該有一些所謂的「崩潰」,但我找不到任何文檔。 – Max

+4

它在'?paste'! ;)如果您對控制檯中的函數類型'?function'感到困惑以訪問幫助文件。 – joran

+0

是啊,猜猜它沒有出現在我身上,它會成爲一個粘貼的參數。就在你認爲你知道某個功能時:P – Max

相關問題