6 字符型数据及其处理 6 字符型数据及其处理 6.1 字符型向量 字符型向量是素为字符串的向量。 字符串在程序中写成用两个双撇号包围或者用两个单撇号包围的内容。 如 注意空字符串并不能自动认为是缺失值, 字符型的缺失值仍用表示。 字符串内容一般从文件、网络、数据库获得, 在程序中直接用双撇号或者单撇号写出只是输入字符串的办法之一。 6.2 转义字符和原始字符串 {p-t-char-raw} 为了在字符串中表示一个双撇号, 可以用反斜杠在前面标明, 称为“转义”,如: 其中也是转义的字符, 表示换行。 当需要转义的内容较多时, 可以使用原始字符串(raw string), 方法是用的格式, 其中是实际内容。如: 注意其中也被当作普通字符解释了, 不再当作换行符。 原始字符串如果内容中包含了圆括号, 可以将边界的圆括号改为方括号或者大括号。 如果这样也不能避免歧义, 可以在开始和结尾加上相同个数的减号, 格式为, 其中为实际内容, 减号个数可以根据需要增加。 6.3 paste函数 针对字符型数据最常用的R函数是函数。 用来连接两个字符型向量, 素一一对应连接, 默认用空格连接。 如 结果相当于。 在连接两个字符型向量时采用R的一般向量间运算规则, 而且可以自动把数值型向量转换为字符型向量。 可以作一对多连接, 如结果相当于。 用指定分隔符, 如结果相当于。 使用参数可以把字符型向量的各个素连接成一个单一的字符串, 如结果相当于。 6.4 转换大小写 函数把字符型向量内容转为大写, 函数转为小写。 比如,结果为, 结果相当于。 这两个函数可以用于不区分大小写的比较, 比如,不论x的值是, 还是, 的结果都为TRUE。 6.5 字符串长度 用计算字符型向量中每个字符串的以字节为单位的长度,这一点对中英文是有差别的, 中文通常一个汉字占两个字节,英文字母、数字、标点占一个字节。 用计算字符型向量中每个字符串的以字符个数为单位的长度,这时一个汉字算一个单位。 在画图时可以用函数计算某个字符串或表达式占用的空间大小。 6.6 取子串 从字符串x中取出从第start个到第stop个的子串, 如 如果x是一个字符型向量,将对每个素取子串。如 用可以从字符串x中取出从第start个到末尾的子串。如 6.7 类型转换 用把内容是数字的字符型值转换为数值,如 是向量化的, 可以转换一个向量的每个素为数值型。 用函数把数值型转换为字符型,如 如果自变量本来已经是字符型则结果不变。 为了用指定的格式数值型转换成字符型, 可以使用函数, 其用法与C语言的函数相似, 只不过是向量化的。例如 readr包的输入一个字符串向量, 对每个字符串, 找到第一个能识别为数值的内容, 舍弃其它内容, 返回转换浮点型结果。 没有数值时返回缺失值, 并增加一个表格用来记录所有的不成功转换。 如: readr中还有, , , 等函数, 这些函数不允许要读取内容以外的内容存在, 比如能正确读取, 而则会返回缺失值, 并带有一个说明缺失情况的表格作为属性。 6.8 字符串替换功能 用可以替换字符串中的子串, 这样的功能经常用在数据清理中。 比如,把数据中的中文标点改为英文标点, 去掉空格,等等。 如 字符串中分隔符既有逗号又有分号, 上面的程序用把分号都换成逗号。 更多的文本数据(字符型数据)功能参见48。 6.9 正则表达式 正则表达式(regular expression)是一种匹配某种字符串模式的方法。 用这样的方法,可以从字符串中查找某种模式的出现位置, 替换某种模式,等等。 这样的技术可以用于文本数据的预处理, 比如用网络爬虫下载的大量网页文本数据。 R中支持perl语言格式的正则表达式, 和函数从字符串中查询某个模式, 和替换某模式。 比如, 下面的程序把多于一个空格替换成一个空格 正则表达式功能强大但也不容易掌握。 详见48。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/74501.html