登录
首页精彩阅读R语言字符串的处理(解析+案例)
R语言字符串的处理(解析+案例)
2017-07-10
收藏

R语言字符串的处理(解析+案例)

数据分析师的日常工作就是数据预处理数据预处理最经常遇到的问题就是字符串的处理,这部分很难,我以前看过一些R的书和一些技术博客,现在依旧发现有些细节做不好,下面我就转载别人的一些字符串处理的方法,我会在下面说说我的看法:

字符串分割函数:strsplit( )

字符串连接函数:paste( )

计算字符串长度:nchar( )

字符串截取函数:substr( )及substring( )

字符串替换函数:chartr( )

大小写转换函数:toupper( )、tolower( )及casefold( )


以目前的工作来说,前4个至少每次都可以用到其中的一两个,5和6不经常用。

1:strsplit( )函数用于字符串分割,其中split是分割参数。所得结果以默认以list形式展示。

用法:strsplit("字符串",sep=“”(分隔符,可省略sep=,直接写“”双引号里面的内容))

2:paste( )函数用于字符串连接,其中sep负责两组字符串间的连接;collapse负责一组字符串内部的连接。

用法:paste(..., sep = " ", collapse = NULL)    (举例:A<-c(a,b),B<-c(1,2),paste(A,B,sep="_",collapse=":")结果为:A_1:B_2。

3:很好理解,用法+案例:nchar(“abc”)结果为3。n是char的长度计算。

4:substr( )函数和substring( )函数是截取字符串最常用的函数,两个函数功能方面是一样的,只是其中参数设置不同。

substr( )函数:必须设置参数start和stop,如果缺少将出错。用法:substr(“字符串”,start=数字,stop=数字)下同。

substring( )函数:可以只设置first参数,last参数若不设置,则默认为1000000L,通常是指字符串的最大长度。

这个也很少理解:substr("abcd",2,3)结果为bc;substring("abcd",2)结果为bcd。

注意:substr和substring的区别就是最后一个参数:前者是必须存在stop结尾,后者随意。

5:chartr( )函数:将原有字符串中特定字符替换成所需要的字符。

其中参数old表示原有字符串中内容;new表示替换后的字符内容
用法:chartr(old= ,new= ,数据框)
案列:x<-c(abc),chartr(old="b",new="s",x)结果就是asc。
6:toupper( )函数:将字符串统一转换为大写。

tolower( )函数:将字符串统一转换为小写。

casefold( )函数:根据参数转换大小写。

前面2个函数比较简单,说说第三个:casefold(向量,upper=T或FALSE),upper=T全是大写,反之。

写这个有2个好处,1是可以帮助别人,2是自我巩固,当然重点是2自我巩固。


数据分析咨询请扫描二维码

客服在线
立即咨询