当前位置: 首页 > 数据分析师 > 数据分析师实战技能 > 数据分析师数据分析 > R语言学习之数据的清理和转化

R语言学习之数据的清理和转化

发布时间:2020年09月28日 09:19:31 来源: 点击量:160

【摘要】R语言学习之数据的清理和转化处理字符串grep grepl 和regexpr函数都能找到与模式相匹配的字符串 sub 和 gsub函数能替换匹配的字符串加

R语言学习之数据的清理和转化

处理字符串
grep grepl 和regexpr函数都能找到与模式相匹配的字符串 sub 和 gsub函数能替换匹配的字符串
加载strngr包,fixed里面为要匹配的字符串 返回匹配的字符串序列

[plain] view plain copy

    > library(stringr)  
    > multiple <- str_detect(english_monarchs$domain,fixed(","))  
    > english_monarchs[multiple,c("name","domain")]  
                                            name                    domain  
    17                                      Offa       East Anglia, Mercia  
    18                                      Offa East Anglia, Kent, Mercia  
    19                         Offa and Ecgfrith East Anglia, Kent, Mercia  
    20                                  Ecgfrith East Anglia, Kent, Mercia  
    22                            C<U+009C>nwulf East Anglia, Kent, Mercia  
    23               C<U+009C>nwulf and Cynehelm East Anglia, Kent, Mercia  
    24                            C<U+009C>nwulf East Anglia, Kent, Mercia  
    25                                  Ceolwulf East Anglia, Kent, Mercia  
    26                                 Beornwulf       East Anglia, Mercia  
    82             Ecgbehrt and <U+00C6>thelwulf              Kent, Wessex  
    83             Ecgbehrt and <U+00C6>thelwulf      Kent, Mercia, Wessex  
    84             Ecgbehrt and <U+00C6>thelwulf              Kent, Wessex  
    85    <U+00C6>thelwulf and <U+00C6>eelstan I              Kent, Wessex  
    86                          <U+00C6>thelwulf              Kent, Wessex  
    87 <U+00C6>thelwulf and <U+00C6>eelberht III              Kent, Wessex  
    88                      <U+00C6>eelberht III              Kent, Wessex  
    89                         <U+00C6>thelred I              Kent, Wessex  
    95                                     Oswiu       Mercia, Northumbria  
使用正则表达式来匹配多个要匹配的字符串,这是来匹配逗号和and
[plain] view plain copy

    > ruler <- str_detect(english_monarchs$name,",|and")  
    > english_monarchs[ruler & !is.na(ruler)]  

把name一列拆分掉,则可以使用str_splist函数

[plain] view plain copy

    > indival <- str_split(english_monarchs$name,",|and")  
    > head(indival[sapply(indival,length)>1])  
    [[1]]  
    [1] "Sigeberht " " Ecgric"     
      
    [[2]]  
    [1] "Hun"      " Beonna " " Alberht"  
      
    [[3]]  
    [1] "Offa "     " Ecgfrith"  
      
    [[4]]  
    [1] "Cu009cnwulf " " Cynehelm"      
      
    [[5]]  
    [1] "Sighere " " Sebbi"    
      
    [[6]]  
    [1] "Sigeheard " " Swaefred"   

st_count是用来统计有多少个字符串
[plain] view plain copy

    > str_count(english_monarchs$name,th)  

str_replace函数来代替字符串中的某一个
ignore.case来忽略某一个字符或字符串

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部