R語言中c()函數(shù)與paste()函數(shù)的區(qū)別說明
c()函數(shù):將括號中的元素連接起來,并不創(chuàng)建向量
paste()函數(shù):連接括號中的元素
例如
c(1, 2:4),結(jié)果為1 2 3 4
paste(1, 2:4),結(jié)果為“1 2” “1 3” “1 4”
c(2, "and"),結(jié)果為“2” “and”
paste(2, "and"),結(jié)果為“2 and”
補充:R語言中paste函數(shù)的參數(shù)sep和collapse詳解
R語言用于拼接字符串的函數(shù)主要有兩個:
paste (..., sep = " ", collapse = NULL) paste0(..., collapse = NULL)
其中paste0函數(shù)式paste函數(shù)的縮減版本,少了一個參數(shù)sep。參數(shù)中的......表示的是想要拼接的對象,后面的參數(shù)表示拼接的方式。
通常對于字符串拼接我們有三種需求:
一堆單獨的字符串拼接到一起;
兩個或者更多字符串對象根據(jù)元素對應(yīng)關(guān)系拼接到一起;
一個字符串連接在一起。
舉點例子:
paste('hello','world','!') #一堆單獨的字符串拼接到一起
## [1] "hello world !"
paste(c('A','B','C'),c(1,2,3)) #兩個或者更多字符串對象根據(jù)元素對應(yīng)關(guān)系拼接到一起
## [1] "A 1" "B 2" "C 3"
paste(1:10) #一個字符串連接在一起
## [1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10"
那么兩個參數(shù)的用法是什么樣的呢?
當(dāng)處理前兩種需求的時候用到的參數(shù)是sep,即多個字符串之間的拼接;
當(dāng)處理第三種需求的時候用到的參數(shù)是collapse,即一個字符串拼接的時候用什么符號或者格式來連接;
舉點例子:
paste('hello','world','!') #一堆單獨的字符串拼接到一起,如果想用‘_'連接起來
paste('hello','world','!',sep = '_')
## [1] "hello_world_!"
paste(c('A','B','C'),c(1,2,3)) #兩個或者更多字符串對象根據(jù)元素對應(yīng)關(guān)系拼接到一起,如果想用‘-'連接起來
paste(c('A','B','C'),c(1,2,3),sep = '-')
## [1] "A-1" "B-2" "C-3"
#此外需要注意的是如果傳入的兩個或多個對象的長度不一樣,對應(yīng)關(guān)系會發(fā)生變化,比如
paste(c('A','B','C','D','E'),c(1,2),sep = '-')
## [1] "A-1" "B-2" "C-1" "D-2" "E-1"
paste(1:10) #一個字符串連接在一起,這第三種需求與上面很大的不同在于上面兩種需求傳入的都是多個對象,而第三種需求在函數(shù)的第一個參數(shù)位置上只傳入一個對象,如果需要用‘~'連接
paste(1:10, collapse = '~')
## [1] "1~2~3~4~5~6~7~8~9~10"
對于縮減版本的paste0有這樣的等式:
paste0(“a”, “b”) == paste(“a”, “b”, sep=”“)
個人覺得熟悉paste即可,畢竟paste功能更加豐富,用起來更加靈活。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
vscode配置R語言debugger環(huán)境:'vscDebugger"的安裝方法
在R中安裝vscDebugger包可以通過兩種方法:第一種是使用Visual Studio Code的命令面板自動安裝,操作簡便,第二種是手動在R控制臺中安裝,這兩種方法都可以有效地安裝vscDebugger包,進而幫助用戶在R語言中進行代碼調(diào)試,更多詳細(xì)步驟和信息可以參考相關(guān)教程或文章2024-10-10
R語言數(shù)據(jù)可視化學(xué)習(xí)之圖形參數(shù)修改詳解
這篇文章主要給大家介紹了關(guān)于R語言數(shù)據(jù)可視化學(xué)習(xí)之圖形參數(shù)修改的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
R語言繪圖數(shù)據(jù)可視化Ridgeline plot山脊圖畫法
這篇文章主要為大家介紹了R語言繪圖數(shù)據(jù)可視化Ridgeline plot山脊圖畫法的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02

