R語言中字符串的拼接操作


在R語言中 paste 是一個很有用的字符串處理函數,可以連接不同類型的變量及常量。

函數paste的一般使用格式為:

paste(..., sep = " ", collapse = NULL)
  • 1
  • 1

其中…表示一個或多個R可以被轉化為字符型的對象;參數sep表示分隔符,默認為空格;參數collapse可選,如果不指定值,那么函數paste的返回值是自變量之間通過sep指定的分隔符連接后得到的一個字符型向量;如果為其指定了特定的值,那么自變量連接后的字符型向量會再被連接成一個字符串,之間通過collapse的值分隔。下面用具體的例子說明各參數的作用:


paste函數把它的自變量連成一個字符串,中間用空格分開,如

> paste("Hello","world")
  • 1
  • 1

返回由空格連接的字符串。

[1] "Hello world"
  • 1
  • 1

連接的自變量可以是向量,這時各對應元素連接起來,長度不相同時較短的向量被重復使用。如

> paste("A", 1:6, sep = "")
  • 1
  • 1

注意這里返回的是由多個值組成的向量。

[1] "A1" "A2" "A3" "A4" "A5" "A6"
  • 1
  • 1

如果希望將一個向量中所有字符連接在一起且中間用逗號分隔,使用paste(x,collapse)即可,結果只是返回一個元素。或者可以使用函數toString來實現(但是toString函數本來就是利用paste來實現的,所以最好還是使用paste)。

> paste(letters[1:6],collapse=",")
  • 1
  • 1

這里就把本來應該成為一個向量的連接成了一個字符串(也就是多個元素的連接)

[1] "a,b,c,d,e,f"
  • 1
  • 1

同時使用了參數seq與collapse。

> paste("A", 1:6, sep = "",collapse=",")
  • 1
  • 1

合理利用這兩個函數組合出自己想要的效果。

[1] "A1,A2,A3,A4,A5,A6"
  • 1
  • 1

如果只是希望向量x中每一個元素和特定的字符(如下划線_)連接,使用paste(x,seq=)即可,如

> paste(letters[1:4],seq='_')
  • 1
  • 1
[1] "a _" "b _" "c _" "d _"
  • 1
  • 1

以上。

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM