R是以绘图的统计为特色,但是作为一门编程语言,以及在数据分析过程中难免也是需要处理字符串,今天就给大家介绍一下,在R中的字符串处理:
R处理字符串有自带的函数,也有一些优秀的第三方包,比如stringr、stringi等。今天给大家介绍R自带的字符串处理函数,下篇介绍第三方的工具包。
1)nchar(x) 获取字符串长度,注意和length的区别,nchar返回每个字符串的长度,length返回向量的元素个数
2)paste (..., sep = " ", collapse= NULL) 字符串粘合
… 表示要链接的字符
sep表示分隔符,默认是空格,
collapse可选,如果不指定值,那么函数paste的返回值是自变量之间通过sep指定的分隔符连接后得到的一个字符型向量;如果为其指定了特定的值,那么自变量连接后的字符型向量会再被连接成一个字符串,之间通过collapse的值分隔。
3)strsplit(x,split, fixed= F, perl= F, useBytes= F) 字符串分割
x 表示要分割的字符串
split 表示拆分位置,默认是正则匹配
fixed 逻辑值,默认为FALSE,表示用正则匹配,设置为TRUE表示字符分割
perl 逻辑值,默认为FALSE,设置为TRUE表示使用perl的正则规则
useBytes 逻辑值,默认为FALSE,设置为TRUE表示逐个字节进行匹配
4)substr(x, start,stop), substring(x, first, last =1000000L) 字符串提取
substr()函数和substring()函数是截取字符串最常用的函数,两个函数功能方面是一样的,只是其中参数设置不同。
substr()函数:必须设置参数start和stop,如果缺少将出错,注意R的下标从1开始。
substring()函数:可以只设置first参数,last参数若不设置,则默认为1000000L,指字符串的最大长度。
5)gsub(pattern,replacement, x, ignore.case = FALSE, perl = FALSE, fixed = FALSE)字符串替换
pattern 字符串匹配模式,可以使正则表达式
replacement 替换的字符串
ignore.case 逻辑值,默认为FAILSE,是否忽略大小写
perl 逻辑值,是否使用perl正则模式
fixed 逻辑值,默认为FLASE,设置为TRUE表示不适用正则方式
6)grep(pattern, x,ignore.case = FALSE, perl = FALSE, value = FALSE, fixed = FALSE, useBytes =FALSE, invert = FALSE)
grepl(pattern, x, ignore.case = FALSE, perl= FALSE, fixed = FALSE, useBytes = FALSE)
pattern 字符串匹配模式,可以使正则表达式
ignore.case 逻辑值,默认为FAILSE,是否忽略大小写
perl 逻辑值,是否使用perl正则模式
fixed 逻辑值,默认为FLASE,设置为TRUE表示不适用正则方式
value 逻辑值,默认为FALSE表示返回匹配的下标,TRUE表示返回匹配的字符
grep和grepl的区别在于grep返回的是匹配正确的字符串在 x 向量中的元素下标。而grepl返回的则是逻辑变量TRUE和FALSE。
7)toupper(x) 转换成大写
8)tolower(x) 转换成小写
9)chartr(old, new,x) 把字符替换
下一篇将介绍第三方的字符串处理包。
/End.
扫描左侧二维码,添加生信者言小助手Anymore的微信号,即可加入生信者言交流群,生信大咖、测序同行、作者团队,等你来撩!
欢迎关注生信者言微信公众号。我们在喜马拉雅FM、千聊直播平台也开设了干货课程,请在相关平台搜索并订阅 “生信者言”,精彩内容袭来。
回复文字:果然科学,看一篇好玩的科普文。
领取专属 10元无门槛券
私享最新 技术干货