这类函数可以从文本型数据中抽取信息,或者为打印输出和生成报告重设文本格式。
你可能希望将某人的姓和名连接在一起,并保证姓和名的首字母大写
想统计可自由回答的调查反馈信息中含有秽语的实例数量
下面的表格中是一些有用的字符处理函数
表5-6字符处理函数
函数 | 描述 | 示例 |
---|---|---|
nchar(x) | 计算x中的字符数量 | x<-c("ab", "cde", "fghij") lenghth(x)返回值为3 nchar(x[3])返回值为5 |
substr(x, star, stop) | 提取或替换一个字符向量中的子串 | x <- "abcdef" substr(x,2,4)返回值为"bcd" sbustr(x,2,4) <- "22222"(将原x中2-4位的bcd替换成222) |
grep(pattern, x, ignore.case = FALSE, fixed = FALSE) | 在x中搜寻某种模式,若fixed = FALSE, 则pattern为一个正则表达式;若fixed = TRUE,则pattern为一个文本字符串。返回值为匹配的下标 | grep("A",c("b", "A", "c"), fixed = TRUE)返回值为2 |
sub(pattern, replacement, x, ignore.case = FALSE, fixed = FALSE) | 在x中搜索pattern,并以文本replacement将其替换。 若fixed = FALSE,则pattern为一个正则表达式; 若fixed = TRUE,则pattern为一个文本字符串 | sub("\s", ".", "Hello There")返回值为Hello.There |
strsplit(x, split, fixed = FALSE) | 在split处分割字符向量x中的元素 若fixed = FALSE,则pattern为一个正则表达式; 若fixed = TRUE,则pattern为一个文本字符串 | y <- strsplit("abc", ""),返回含有一个成分、3个元素的列表,包含的内容分别为"a","b","c" |
paste(…, sep="") | 连接字符串,分隔符为sep | paste("x", 1:3, sep=""),返回c("x1","x2","x3") paste("x", 1:3, sep="M"),返回c("xM1","xM2","xM3") paste("Today is", date()),返回值为Today is 具体时间 |
toupper(x) | 大写转换 | |
tolower(x) | 小写转换 |
没有评论:
发表评论