美文网首页
tidyverse包-reader

tidyverse包-reader

作者: 萍智医信 | 来源:发表于2021-08-20 17:12 被阅读0次

加载包及读取数据

library(tidyverse)
v_information<-read_csv("vip_information.csv",col_names=T)
v_information.png
读取的向量数据类型.png
v_information<-read_csv("vip_information.csv",col_names=T,
                        col_types = cols(
                          kh = col_character(),
                          csny = col_date(),
                          xb = col_integer(),
                          djsj = col_date(),
                          class = col_integer()
                          ))
向量数据类型更改后.png

发现什么问题了吗?解析后丢失了很多数据,出现很多NA,需要做下一步操作来处理。
下面我们通过tidyverse包里的函数来获得我们想要的数据类型

解析向量数据类型的函数:
parse_logical 逻辑型、parse_integer 整型、parse_double 严格的数值型、parse_number 数值型、parse_character 字符型、parse_factor 因子型、日期型:parse_datetime、parse_date、parse_time

将向量class字符型解析为整数型

v_information<-read_csv("vip_information.csv",col_names=T)
v_information$class<-parse_integer(v_information$class)
v_information$class.png

查看为什么出现NA

problems(v_information$class)

原来是特殊符号,字母转变成NA


特殊符号,字母转变成NA.png

将向量csny字符型转变为日期型

d<-parse_date(v_information$csny,format ="%Y/%m/%d")  #format ="%Y/%m/%d"定义日期格式
d.png
problems(d)
有的日期数据后面有时间,故按给定的格式无法解读.png

自定义函数解决这一问题

parse_self<-function(dat){
  d<-sapply(strsplit(dat,split=" "),function(x){x[[1]][1]})   #由于strsplit函数会将分裂后的数据转成列表,故用sapply函数将列表第一列提取出来
  return(parse_date(d,format ="%Y/%m/%d"))
}

v_information$csny<-parse_self(v_information$csny) 
v_information$djsj<-parse_self(v_information$djsj)
v_information.png

除了上面的自定义函数方法,还可以直接用R里的基础函数as.Date直接将其转为日期型

v_information$csny<-as.Date(v_information$csny) 
v_information$djsj<-as.Date(v_information$djsj) 

相关文章

  • tidyverse包-reader

    加载包及读取数据 发现什么问题了吗?解析后丢失了很多数据,出现很多NA,需要做下一步操作来处理。下面我们通过tid...

  • D4-R for Data Science

    安装R包 install.packages("tidyverse")数据处理神包tidyverse 加载R包 li...

  • R语言 Mutate家族

    首先是加载相关的包,mutate主要属于dplyr包里,这里我们统一使用tidyverse包。tidyverse包...

  • tidyverse包进行R语言数据清洗

    这次用的包是要是tidyverse包,安装不上tidyverse包,可以安装tidyr包。 熊老师其实还是建议家直...

  • tidyverse包简介

    tidyverse包是对一些具有相同思想,且可以一同工作的R包的收集。载入tidyverse包的时候提醒哪些包是一...

  • R中可以处理因子的一切-forcats包(一)

    forcats包是tidyverse生态中的一个,所以直接加载tidyverse就好了哈

  • tidyverse包总结

    tidyverse是一组处理与可视化R包的集合,它们共享通用数据表示和API设计。 核心包功能ggplot2[ht...

  • tidyverse包-tidyr

    ggplot2画箱线图 每个箱线图叠加,一步步操作,这样太麻烦了,换个方法,用tidyverse包里的gather...

  • tidyverse包-stringr

    加载R包 str_c函数 将向量x里的字符数据首字母变为小写字母 向量提取首字母以t开头的数据 str_detec...

  • 水稻GO分析

    1.构建水稻OrgDb包 1.1安装如下依赖: R 包:argparser, tidyverse, formatt...

网友评论

      本文标题:tidyverse包-reader

      本文链接:https://www.haomeiwen.com/subject/kdptiltx.html