R 字符串
在 R 中的一对单引号或双引号内写入的任何值都被视为字符串。 R 在内部将每个字符串存储在双引号内,即使您使用单引号创建它们也是如此。
在字符串构造中应用的规则
字符串开头和结尾的引号应该都是双引号或都是单引号。它们不能混合使用。
可以将双引号插入到以单引号开头和结尾的字符串中。
单引号可以插入到以双引号开头和结尾的字符串中。
不能将双引号插入到以双引号开头和结尾的字符串中。
不能将单引号插入到以单引号开头和结尾的字符串中。
有效字符串示例
以下示例阐明了在 R 中创建字符串的规则。
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)
当我们运行脚本时,它无法给出以下结果。
Error: unexpected symbol in:
"print(e)
f <-'Single"
Execution halted
字符串操作
连接字符串-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 = ""))
当我们执行上面的代码时,它会产生以下结果-
[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"))
以下是所用参数的说明-
x 是向量输入。
digits 是显示的总位数。
nsmall 是小数点右边的最小位数。
scientific 设置为 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)
当我们执行上面的代码时,它会产生以下结果-
[1] "23.1234568"
[1] "6.000000e+00" "1.314521e+01"
[1] "23.47000"
[1] "6"
[1] " 13.7"
[1] "Hello "
[1] " Hello "
计算字符串中的字符数-nchar() 函数
该函数计算字符串中包含空格的字符数。
语法
nchar() 函数的基本语法是-
以下是所用参数的说明-
x 是向量输入。
示例
result <-nchar("Count the number of characters")
print(result)
当我们执行上面的代码时,它会产生以下结果-
改变大小写-toupper() 和 tolower() 函数
这些函数改变字符串字符的大小写。
语法
toupper() 和 tolower() 函数的基本语法是-
以下是所用参数的说明-
x 是向量输入。
示例
# Changing to Upper case.
result <-toupper("Changing To Upper")
print(result)
# Changing to lower case.
result <-tolower("Changing To Lower")
print(result)
当我们执行上面的代码时,它会产生以下结果-
[1] "CHANGING TO UPPER"
[1] "changing to lower"
提取字符串的一部分-substring() 函数
此函数提取字符串的一部分。
语法
substring() 函数的基本语法是-
以下是所用参数的说明-
x 是字符向量输入。
first 是要提取的第一个字符的位置。
last 是要提取的最后一个字符的位置。
示例
# Extract characters from 5th to 7th position.
result <-substring("Extract", 5, 7)
print(result)
当我们执行上面的代码时,它会产生以下结果-