首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

R语言的字符串处理

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、千聊直播平台也开设了干货课程,请在相关平台搜索并订阅 “生信者言”,精彩内容袭来。

回复文字:果然科学,看一篇好玩的科普文。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180305G0U99Z00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券