Next: , Previous: Missing values, Up: Simple manipulations numbers and vectors



2.6 字符向量

在 R 中,常常会用到字符量和字符向量, 如图上的标注。在需要它们的时候,可以用双引号作 分割符,如 "x-values""New iteration results"

字符串输入的时候既可以用双引号 (") 又可以用单引号 ('),但是打印的时候则采用双引号 (有时根本不用 引号)。它们采用 C 语言形式的转义控制序列(escape sequences),用 \ 表示 转义字符,所以输入 \\ 将会得到 \\ 的输出, 而想插入 " 时则要输入 \"。其他 有用的转义字符如 \n(换行),\t(制表符) 和 \b(退格键)等等。

通过函数 c() 可以把几个字符向量连接成一个字符向量; 这种用法的例子会常常出现的。 函数 paste() 可以有任意多的参数, 并且把它们一个接一个连成字符串。这些参数中的 任何数字都将被显式地强制转换成字符串,而且以同样的 方式在终端显示。 默认的分隔符是单个的空格符, 不过这可以被指定的参数修改。 参数 sep=string 就是将分隔符换成 string, 这个参数还有可能为空。

例如

     > labs <- paste(c("X","Y"), 1:10, sep="")

使得 labs 变成一个字符向量。

     c("X1", "Y2", "X3", "Y4", "X5", "Y6", "X7", "Y8", "X9", "Y10")

特别要注意一下这里短的列表发生了循环使用; 因此 c("X", "Y") 重复了5次以吻合 1:10 1


Footnotes

[1] paste(..., collapse=ss) 会在 每个结果生成的字符串元素后面加上 ss 。 R 有更多的工具进行字符处理,参见 subsubstring的帮助文档。