R 語言字符串可以使用一對單引號 ' ' 或一對雙引號 " " 來表示。
單引號字符串中可以包含雙引號。
單引號字符串中不可以包含單引號。
雙引號字符串中可以包含單引號。
雙引號字符串中不可以包含雙引號。
以下示例演示來字符串的使用:
a <- '使用單引號' print(a) b <- "使用雙引號" print(b) c <- "雙引號字符串中可以包含單引號(') " print(c) d <- '單引號字符串中可以包含雙引號(") ' print(d)
執(zhí)行以上代碼輸出結(jié)果為:
[1] "使用單引號" [1] "使用雙引號" [1] "雙引號字符串中可以包含單引號(') " [1] "單引號字符串中可以包含雙引號(\") "
以下我們來看下 R 語言一些內(nèi)置函數(shù)對字符串對操作。
paste() 函數(shù)用于使用指定對分隔符來對字符串進行連接,默認對分隔符為空格。
語法格式:
paste(..., sep = " ", collapse = NULL)
參數(shù)說明:
... : 字符串列表
sep : 分隔符,默認為空格
collapse : 兩個或者更多字符串對象根據(jù)元素對應(yīng)關(guān)系拼接到一起,在字符串進行連接后,再使用 collapse 指定對連接符進行連接
a <- "Google" b <- 'Nhooo' c <- "Taobao" print(paste(a,b,c)) print(paste(a,b,c, sep = "-")) print(paste(letters[1:6],1:6, sep = "", collapse = "=")) paste(letters[1:6],1:6, collapse = ".")
執(zhí)行以上代碼輸出結(jié)果為:
[1] "Google Nhooo Taobao" [1] "Google-Nhooo-Taobao" [1] "a1=b2=c3=d4=e5=f6" [1] "a 1.b 2.c 3.d 4.e 5.f 6"
format() 函數(shù)用于格式化字符串,format() 可作用于字符串或數(shù)字。
語法格式:
format(x, digits, nsmall, scientific, width, justify = c("left", "right", "centre", "none"))
參數(shù)說明:
x : 輸入對向量
digits : 顯示的位數(shù)
nsmall : 小數(shù)點右邊顯示的最少位數(shù)
scientific : 設(shè)置科學(xué)計數(shù)法
width : 通過開頭填充空白來顯示最小的寬度
justify:設(shè)置位置,顯示可以是左邊、右邊、中間等。
# 顯示 9 位,最后一位四舍五入 result <- format(23.123456789, digits = 9) print(result) # 使用科學(xué)計數(shù)法顯示 result <- format(c(6, 13.14521), scientific = TRUE) print(result) # 小數(shù)點右邊最小顯示 5 位,沒有的以 0 補充 result <- format(23.47, nsmall = 5) print(result) # 將數(shù)字轉(zhuǎn)為字符串 result <- format(6) print(result) # 寬度為 6 位,不夠的在開頭添加空格 result <- format(13.7, width = 6) print(result) # 左對齊字符串 result <- format("Nhooo", width = 9, justify = "l") print(result) # 居中顯示 result <- format("Nhooo", width = 10, justify = "c") print(result)
執(zhí)行以上代碼輸出結(jié)果為:
[1] "23.1234568" [1] "6.000000e+00" "1.314521e+01" [1] "23.47000" [1] "6" [1] " 13.7" [1] "Nhooo " [1] " Nhooo "
nchar() 函數(shù)用于計數(shù)字符串或數(shù)字列表的長度。
語法格式:
nchar(x)
參數(shù)說明:
x : 向量或字符串
result <- nchar("Google Nhooo Taobao") print(result)
執(zhí)行以上代碼輸出結(jié)果為:
[1] 20
toupper() & tolower() 函數(shù)用于將字符串的字母轉(zhuǎn)化為大寫或者小寫。
語法格式:
toupper(x) tolower(x)
參數(shù)說明:
x : 向量或字符串
# 轉(zhuǎn)大寫
result <- toupper("Nhooo") print(result) # 轉(zhuǎn)小寫 result <- tolower("Nhooo") print(result)
執(zhí)行以上代碼輸出結(jié)果為:
[1] "NHOOO" [1] "nhooo"
substring() 函數(shù)用于截取字符串。
語法格式:
substring(x,first,last)
參數(shù)說明:
x : 向量或字符串
first : 開始截取的位置
last: 結(jié)束截取的位置
# 從第 2 位截取到第 5 位 result <- substring("Nhooo", 2, 5) print(result)
執(zhí)行以上代碼輸出結(jié)果為:
[1] "hooo"