中国高校课件下载中心 》 教学资源 》 大学文库

《R语言》课程教学资源(PPT课件)第06章 数据预处理

文档信息
资源类别:文库
文档格式:PPTX
文档页数:39
文件大小:278.89KB
团购合买:点击进入团购
内容简介
1. 掌握R语言中的字符串处理 2. 掌握R语言中日期和时间的处理 3. 学会对内置数据集中的数据做初步清洗
刷新页面文档预览

第6章 数据预处理

本章学习目标 1. 掌握R语言中的字符串处理 2. 掌握R语言中日期和时间的处理 3. 学会对内置数据集中的数据做初步清洗

6.1 字符串的处理 1. 字符串分割 2. 字符串拼接 3. 字符串长度计算 4. 字符串截取 5. 字符串替换 6. 字符串大小写替换 7. 字符串匹配 8. 字符串格式化输出

6.1 字符串的处理 1. 字符串分割 本书中使用strsplit( )函数来实现分割字符串。 strsplit( )函数的语法结构是: strsplit(x,split,fixed= FALSE,perl= FALSE,useBytes= FALSE) ①参数x:参数x是需要函数来处理的字符串格式的向量。 ②参数split:为拆分位置的字串向量,即在哪个字串处开始拆分。该参数默认是正则表达式匹配。 ③参数fixed:若设置fixed= TURE则表示是用普通文本匹配或者正则表达式的精确匹配。 ④参数perl:表示可以使用perl语言里面的正则表达式。 ⑤参数useBytes:表示是否逐字节进行匹配,默认为FALSE,表示是按字符匹配而不是按字节进行匹配。 注意:strsplit( )函数中的必要参数是x,split两个参数,其它参数不是必要参数

第一种拆分方式: > x y y [[1]] [1] "Create" "a" "comma-separated" [4] "String" "from" "the" [7] "above" "list" "of" [10] "pairs." 第二种拆分方式: #用NULL串拆分 > y y [[1]] [1] "C" "r" "e" "a" "t" "e" " " "a" " " "c" "o" "m" "m" "a" "-" "s" [17] "e" "p" "a" "r" "a" "t" "e" "d" " " "S" "t" "r" "i" "n" "g" " " [33] "f" "r" "o" "m" " " "t" "h" "e" " " "a" "b" "o" "v" "e" " " "l" [49] "i" "s" "t" " " "o" "f" " " "p" "a" "i" "r" "s" "." 【例6-1】拆分字符串“Create a comma-separatedString from the above list of pairs.”,拆分的位置为空格。 6.1 字符串的处理 第三种拆分方式: > y y [[1]] [1] "Create" "a" "comma-separated" [4] "String" "from" "the" [7] "above" "list" "of" [10] "pairs. 注意: strsplit( )函数中的split参数的设置了三个不一样的值, 第一种是一个空格,第二种是一个空字符,第三个是 “\\s+”。第一个参数空格和第三个参数“\\s+”得到 了相同的效果,都是把x字符串按照空格进行分割。第 二个参数里面相当于设置了‘split=“”’,当设置为空 字符的时候,strsplit( )函数会把字符串按照字符一个 个进行分割。所以第二种方式虽然对字符串进行了拆 分但没有完成题目要求

6.1 字符串的处理 2. 字符串拼接 本书中使用paste( )函数来实现字符串拼接。 paste( )函数的语法结构是: paste (.,sep = " ",collapse = NULL) (1) sep参数:负责两个字符串间的拼接内容; (2) collapse参数:负责一组字符串是否是在内部拼接

> x y paste(x,y) #将两个字符串向量用空格拼接,sep取默认值 [1] "a A" "b B" "c C" "d D" "e E“ 拼接方式2: > paste(x,y,sep = "") #将两个字符串向量用NULL串拼接 [1] "aA" "bB" "cC" "dD" "eE“ 拼接方式3: > paste(x,y,sep = "-") #将两个字符串向量用“-”串拼接 [1] "a-A" "b-B" "c-C" "d-D" "e-E“ 【例6-2】将c(“a”,“b”,“c”,“d”,“e”)和c(“A”,“B”,“C”,“D”,“E”)拼接,拼接方式为 1.直接拼接;2.用空字符拼接;3.用“-”拼接。 6.1 字符串的处理 注意: sep参数使用默认值的情况下两个字 符向量的拼接是使用空格的方式拼接, 如果想直接拼接需要把sep参数设置为 “”,如果用“-”拼接需要将sep参数 设置为“-

6.1 字符串的处理 3. 字符串长度计算 计算字符串长度可以用nchar( )函数。需要注意的是length( )函数与nchar( )函数不同, length( )函数是取向量的长度,nchar( )函数用于计算字符串中的字符数量。 nchar( )函数的语法结构是:(keepNA取的是默认值) nchar(x,type = "chars" ,keepNA = TRUE) nzchar(x,keepNA = FALSE) ① x参数:判断的目标字符串; ② type参数是判断长度的类型; ③ keepNA参数是设置NA是否参与计算长度(TRUE: NA值不参与计算;FLASE: 参与计算); ④ nzchar( )函数用于判断一个变量的长度是否为0,返回的是逻辑值

> x nchar(x) # 计算字符串的长度 [1] 7 8 9 NA 0 8 > nzchar(x) # 判断字符串的长度是否为0 [1] TRUE TRUE TRUE TRUE FALSE TRUE > nchar("中文",type = "chars") # 按字符类型 [1] 2 > nchar("中文",type = "bytes") # 按字节 [1] 4 > nchar(x,keepNA = FALSE) # NA值参与计算长度 [1] 7 8 9 2 0 8 > nzchar(x,keepNA = TRUE) [1] TRUE TRUE TRUE NA FALSE TRUE 【例6-3】判断c(“ackieci” , “bcgice.r” ,“c-year-ic” ,NA,“ ”,“d[dd.ff]”) 中每个字符串长度。 6.1 字符串的处理 注意: ①如果type参数是chars,keepNA 参数是TRUE: nchar( )函数按照每一个字符为一个标准计算字符串的 长度,NA值不参与计算直接返回; nzchar( )函数判定字符串的长度是否大于0,如果大于 0返回TRUE,如果等于0返回FALSE。 ② type参数中常用的还有bytes,这个属性一般是在处 理中文的时候出现,如果type参数设置为bytes,每一 个中文字符按照2个字符计算。 ③ keepNA 参数主要负责NA值是否参与计算。 在nchar( )函数中keepNA 参数是FALSE,NA值计算为2; 在nzchar( )函数中keepNA 参数是TRUE,NA不参与判断 直接显示NA值

刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档