R語言 字符串

2022-06-16 15:00 更新

在R語言中的單引號或雙引號對中寫入的任何值都被視為字符串。 R語言存儲的每個字符串都在雙引號內,即使是使用單引號創(chuàng)建的依舊如此。

在字符串構造中應用的規(guī)則

  • 在字符串的開頭和結尾的引號應該是兩個雙引號或兩個單引號。它們不能被混合。

  • 雙引號可以插入到以單引號開頭和結尾的字符串中。

  • 單引號可以插入以雙引號開頭和結尾的字符串。

  • 雙引號不能插入以雙引號開頭和結尾的字符串。

  • 單引號不能插入以單引號開頭和結尾的字符串。

有效字符串的示例

以下示例闡明了在 R 語言中創(chuàng)建字符串的規(guī)則。

a <- 'Start and end with single quote'
print(a)

b <- "Start and end with double quotes"
print(b)

c <- "single quote ' in between double quotes"
print(c)

d <- 'Double quotes " in between single quote'
print(d)

當運行上面的代碼,我們得到以下輸出 -

[1] "Start and end with single quote"
[1] "Start and end with double quotes"
[1] "single quote ' in between double quote"
[1] "Double quote " in between single quote"

無效字符串的示例

e <- 'Mixed quotes" 
print(e)

f <- 'Single quote ' inside single quote'
print(f)

g <- "Double quotes " inside double quotes"
print(g)

當我們運行腳本失敗給下面的結果。

...: unexpected INCOMPLETE_STRING

.... unexpected symbol 
1: f <- 'Single quote ' inside

unexpected symbol
1: g <- "Double quotes " inside

字符串操作

連接字符串 - paste() 函數

R語言中的許多字符串使用 paste() 函數組合。 它可以采取任何數量的參數組合在一起。

語法

對于粘貼功能的基本語法是 -

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

以下是所使用的參數的說明 -

  • ... 表示要組合的任意數量的自變量。

  • sep  表示參數之間的任何分隔符。它是可選的。

  • collapse 用于消除兩個字符串之間的空格。 但不是一個字符串的兩個字內的空間。

a <- "Hello"
b <- 'How'
c <- "are you? "

print(paste(a,b,c))

print(paste(a,b,c, sep = "-"))

print(paste(a,b,c, sep = "", collapse = ""))

當我們執(zhí)行上面的代碼,它產生以下結果 -

[1] "Hello How are you? "
[1] "Hello-How-are you? "
[1] "HelloHoware you? "

格式化數字和字符串 - format() 函數

可以使用 format() 函數將數字和字符串格式化為特定樣式。

語法

格式化函數的基本語法是 -

format(x, digits, nsmall, scientific, width, justify = c("left", "right", "centre", "none")) 

以下是所使用的參數的描述 - 

  • 是向量輸入。

  • digits 是顯示的總位數。

  • nsmall 是小數點右邊的最小位數。

  • 科學設置為 TRUE 以顯示科學記數法。

  • width 指示通過在開始處填充空白來顯示的最小寬度。

  • justify 是字符串向左,右或中心的顯示。

# Total number of digits displayed. Last digit rounded off.
result <- format(23.123456789, digits = 9)
print(result)

# Display numbers in scientific notation.
result <- format(c(6, 13.14521), scientific = TRUE)
print(result)

# The minimum number of digits to the right of the decimal point.
result <- format(23.47, nsmall = 5)
print(result)

# Format treats everything as a string.
result <- format(6)
print(result)

# Numbers are padded with blank in the beginning for width.
result <- format(13.7, width = 6)
print(result)

# Left justify strings.
result <- format("Hello", width = 8, justify = "l")
print(result)

# Justfy string with center.
result <- format("Hello", width = 8, justify = "c")
print(result)

當我們執(zhí)行上面的代碼,它產生以下結果 -

[1] "23.1234568"
[1] "6.000000e+00" "1.314521e+01"
[1] "23.47000"
[1] "6"
[1] "  13.7"
[1] "Hello   "
[1] " Hello  "

計算字符串中的字符數 - nchar() 函數

此函數計算字符串中包含空格的字符數。

語法

nchar() 函數的基本語法是 -

nchar(x)

以下是所使用的參數的描述 - 

  • 是向量輸入。

result <- nchar("Count the number of characters")
print(result)

當我們執(zhí)行上面的代碼,它產生以下結果 -

[1] 30

更改case - toupper()和tolower()函數

這些函數改變字符串的字符的大小寫。

語法

toupper()和tolower()函數的基本語法是 -

toupper(x)
tolower(x)

以下是所使用的參數的描述 - 

  • x是向量輸入。

# Changing to Upper case.
result <- toupper("Changing To Upper")
print(result)

# Changing to lower case.
result <- tolower("Changing To Lower")
print(result)

當我們執(zhí)行上面的代碼,它產生以下結果 -

[1] "CHANGING TO UPPER"
[1] "changing to lower"

提取字符串的一部分 - substring()函數

此函數提取字符串的部分。

語法

substring() 函數的基本語法是 -

substring(x,first,last)

以下是所使用的參數的描述 - 

  • 是字符向量輸入。

  • 首先是要提取的第一個字符的位置。

  • last 是要提取的最后一個字符的位置。

# Extract characters from 5th to 7th position.
result <- substring("Extract", 5, 7)
print(result)

當我們執(zhí)行上面的代碼,它產生以下結果 -

[1] "act"

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號