加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

LearningR-数据处理赏罚

发布时间:2021-03-14 19:47:13 所属栏目:大数据 来源:网络整理
导读:R自带函数 reshape2 data restructuring dplyr data aggregation tidyr 待清算 字符串处理赏罚 1. R自带函数 1.1 转置 行使函数t()可对一个矩阵或数据框举办转置,对付数据框,行名将酿成变量(列)名。 cars - mtcars(1:5,1:4)carst(cars) 数列array举办维度转

其它尚有一个paste0函数,默认就是sep=""

5.3 支解字符 strsplit

strsplit(x,split,fixed = FALSE,perl = FALSE,useBytes = FALSE)
x <- c(as = "asfef",qu = "qwerty","yuiop[","b","stuff.blah.yech")
strsplit(x,"e")
#必要留意的细节
strsplit(paste(c("","")
strsplit(""," ")[[1]]
strsplit(" "," ")[[1]]

##倒序运用:
strReverse <- function(x)
        sapply(lapply(strsplit(x,NULL),rev),paste,collapse = "")
strReverse(c("abc","Statistics"))

5.4 提取字符 substr与substring

substr(x,start,stop)
substring(text,first,last = 1000000L)
substr(x,stop) <- value
substring(text,last = 1000000L) <- value
substr("abcdef",4)
substring("abcdef",1:6,1:6)

substr(rep("abcdef",4),1:4,4:5)
x <- c("asfef","qwerty","stuff.blah.yech")
substr(x,5)
substring(x,4:6)
substring(x,2) <- c("..","+++")

5.5 替代字符 sub和gsub

  • sub 只做一次替代(不管有屡次匹配)

  • gsub 把满意前提的匹配都做替代

sub(pattern,replacement,x,ignore.case = FALSE,useBytes = FALSE)
gsub(pattern,useBytes = FALSE)

固然sub和gsub是用于字符串替代的函数,但严酷地说R说话没有字符串替代的函数,由于R说话不管什么操纵对参数都是传值不传址。以是原字符串并没有改变,要改变原变量我们只能通过再赋值的方法。

text <- "Hello Adam!nHello Ava!"
sub(pattern="Adam",replacement="World",text)
text
sub(pattern="Adam|Ava",?replacement="World",?text)
gsub(pattern="Adam|Ava",?replacement="world",?text)

sub和gsub函数可以行使提取表达式(转义字符+数字)让部门酿玉成部

sub(pattern=".*(Adam).*",replacement="1",text)
str <- "Now is the time      "
sub(" +$","",str)
sub("[[:space:]]+$",str)
sub("s+$",str,perl = TRUE)
txt <- "a test of capitalizing"
gsub("(w)(w*)","U1L2",txt,perl=TRUE)
gsub("b(w)","U1",perl=TRUE)

5.6 字符查询匹配 grep

  • grep 返回匹配项的下标

  • grepl 返回全部查询功效的逻辑向量

  • regexpr

  • gregexpr

  • regexec
    regexpr、gregexpr和regexec这三个函数返回的功效包括了匹配的详细位置和字符串长度信息,可以用于字符串的提取操纵。

x <- c("abc","abcdef","def")
grep("def",x)
#grep返回匹配项的下标
#grepl返回全部查询功效的逻辑向量。两者的功效都可用于提取数据子集
grepl("def",x)
regexpr、gregexpr和regexec

5.5 其他

  • 巨细写转换 tolower与toupper

  • 列表转换为向量unlist
    unlist(x,recursive = TRUE,use.names = TRUE)

  • 一再输入rep()

rep(1:4,2)
rep(1:4,each = 2)
rep(1:4,2))
rep(1:4,1))
rep(1:4,each = 2,len = 4)
rep(1:4,len = 10)
rep(1:4,times = 3)

5.6 stringr包

stringr包是用来处理赏罚字符串的。(先挖坑...)

附录A 正则表达式

待清算

附录B

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读