📜  R-字符串

📅  最后修改于: 2020-11-29 07:43:38             🧑  作者: Mango


在R中用双引号或双引号引起的任何值都被视为字符串。在内部,R将每个字符串存储在双引号中,即使使用单引号创建它们也是如此。

字符串构造中应用的规则

  • 字符串开头和结尾的引号应均为双引号或均为单引号。他们不能混在一起。

  • 可以将双引号插入以单引号开头和结尾的字符串。

  • 可以将单引号插入以双引号开头和结尾的字符串。

  • 不能将双引号插入以双引号开头和结尾的字符串。

  • 不能将单引号插入以单引号开头和结尾的字符串。

有效字符串的示例

以下示例阐明了有关在R中创建字符串的规则。

a 

当上面的代码运行时,我们得到以下输出-

[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 

当我们运行脚本时,它无法给出以下结果。

Error: unexpected symbol in:
"print(e)
f 

字符串操作

连接字符串-paste()函数

R中的许多字符串都使用paste()函数进行组合。可以将任意数量的参数组合在一起。

句法

粘贴函数的基本语法是-

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

以下是所用参数的描述-

  • 表示要组合的任意数量的参数。

  • sep表示参数之间的任何分隔符。它是可选的。

  • 折叠用于消除两根字符串之间的空间。但是不是一个字符串两个单词之间的空格。

a 

当我们执行以上代码时,它产生以下结果-

[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是小数点右边的最小位数。

  • 科学设置为TRUE以显示科学计数法。

  • width表示在开始时用空格填充要显示的最小宽度。

  • justify是字符串在左,右或中心的显示。

# Total number of digits displayed. Last digit rounded off.
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()函数的基本语法是-

nchar(x)

以下是所用参数的描述-

  • x是向量输入。

result 

当我们执行以上代码时,它产生以下结果-

[1] 30

更改大小写-toupper()和tolower()函数

这些函数更改字符串字符的字符串。

句法

toupper()和tolower()函数的基本语法为-

toupper(x)
tolower(x)

以下是所用参数的描述-

  • x是向量输入。

# Changing to Upper case.
result 

当我们执行以上代码时,它产生以下结果-

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

提取字符串-substring()函数

此函数提取字符串的一部分。

句法

substring()函数的基本语法是-

substring(x,first,last)

以下是所用参数的描述-

  • x是字符向量输入。

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

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

# Extract characters from 5th to 7th position.
result 

当我们执行以上代码时,它产生以下结果-

[1] "act"