#缺失值

an=c(1,2,NA)
is.na(an)                         #会形成一个布尔向量

布尔向量就是一群像(FALSE,FALSE,TURE)这样的向量。

关于缺失值还有一个函数:complete.cases函数

该函数与is.na的区别在于:

1、输出数据格式不同。is.na按照数据框格式形成一个(FALSE,FALSE,TURE)列,而complete.cases形成是一个数列向量,不再是按照数据框格式;

2、输出数据内容不同。complete.cases输出的逻辑向量与is.na正好相反,is.na的TURE为是缺失值;complete.cases的TURE为完整值。

an=c(1,2,NA)
sum(complete.cases(an))
sum(!complete.cases(an))#==sum(is.na(an))
mean(!complete.cases(an))  #获得缺失比例==1/3

疑惑:为什么布尔向量,sum一下可以得到数值?   ——因为R默认将TURE、FALSE当做1、0

#计算缺失值个数

sum(is.na(an))                    #单数列,sum一下可以直接计算“Ture”的数值和
colSums(is.na(an),na.rm = T)      #多维数列,按列,na.rm为是否需要忽略缺失值,na.rm=T表示忽略,删除
rowSums(is.na(an),na.rm = T)      #多维数列,按行,na.rm为是否需要忽略缺失值,na.rm=T表示忽略,删除

#数据框中的缺失值操作

#数据框中的缺失值操作
y <- an[is.na(an)]               #选中缺失值
y<-  an[is.na(an)=="TRUE"]       #上同,选中缺失值
an[is.na(an)] <- 0               # 表示将向量x中所以NA元素用0来代替
an[(!is.na(an)) & x>0] -> z      #可以用 & 加入其他条件,进行筛选

————————————————————————————————————————————————————————————

缺失值检测解决方案:

关于缺失值的检测应该包括:缺失值数量、缺失值比例、缺失值与完整值数据筛选。

#缺失值解决方案
sum(complete.cases(saledata))         #is.na(saledata)
sum(!complete.cases(saledata))
mean(!complete.cases(saledata))       #1/201数字,缺失值比例
saledata[!complete.cases(saledata),]  #筛选出缺失值的数值

R语言︱缺失值处理的更多相关文章

  1. R语言︱缺失值处理之多重插补——mice包

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:缺失值是数据清洗过程中非常重要的问题 ...

  2. R语言缺失值高级处理方法

    0 引言 对于一些数据集,不可避免的出现缺失值.对缺失值的处理非常重要,它是我们能否继续进行数据分析的关键,也是能否继续大数据分析的数据基础. 1 缺失值分类 在对缺失数据进行处理前,了解数据缺失的机 ...

  3. R语言缺失值信息处理

    mean(!is.na(mat))可以计算数据完整度(没有缺失值的) mean(!is.na(mat))>0.9,90%完整可以使用 # 缺失值的位置研究as.vector(attributes ...

  4. 可视化缺失值的办法——R语言

    在数据分析中,对缺失值的处理是很关键一步,一般用summary()函数 a<-c(,,,NA) B<-c("a","b","c" ...

  5. R入门<三>-R语言实战第4章基本数据管理摘要

    入门书籍:R语言实战 进度:1-4章 摘要: 1)实用的包 forecast:用于做时间序列预测的,有auto.arima函数 RODBC:可以用来读取excel文件.但据说R对csv格式适应更加良好 ...

  6. 如何在R语言中使用Logistic回归模型

    在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价.身高.GDP.学生成绩等,发现这些被预测的变量都属于连续型变量.然而有些情况下,被预测变量可能是二元变量,即成功或失败.流失或 ...

  7. R语言实战(三)基本图形与基本统计分析

    本文对应<R语言实战>第6章:基本图形:第7章:基本统计分析 =============================================================== ...

  8. R语言实战(二)数据管理

    本文对应<R语言实战>第4章:基本数据管理:第5章:高级数据管理 创建新变量 #建议采用transform()函数 mydata <- transform(mydata, sumx ...

  9. 数据分析和R语言的那点事儿_1

    最近遇到一些程序员同学向我了解R语言,有些更是想转行做数据分析,故开始学习R或者Python之类的语言.在有其他编程语言的背景下,学习R的语法的确是一件十分简单的事.霸特,如果以为仅仅是这样的话那就图 ...

随机推荐

  1. 关键字voltale

    ***volatile在多线程用的最多.*** #include<stdio.h> #include<stdlib.h> int main() { ; i < ; i++ ...

  2. [DeeplearningAI笔记]ML strategy_2_1误差分析

    机器学习策略-误差分析 觉得有用的话,欢迎一起讨论相互学习~Follow Me 2.1 误差分析 训练出来的模型往往没有达到人类水平的效果,为了得到人类水平的结果,我们对原因进行分析,这个过程称为误差 ...

  3. windows免费?linux免费?赶紧过来看吧

    1.今天分享大家一个免费申请linux的网站,可以用来做学习使用! 1.链接地址:https://linuxzoo.net 一次性邮箱:https://temp-mail.org   打开网址申请一个 ...

  4. Hadoop学习笔记四

    一.fsimage,edits和datanode的block在本地文件系统中位置的配置 fsimage:hdfs-site.xml中的dfs.namenode.name.dir  值例如file:// ...

  5. python实现时间o(1)的最小栈

    这是毕业校招二面时遇到的手写编程题,当时刚刚开始学习python,整个栈写下来也是费了不少时间.毕竟语言只是工具,只要想清楚实现,使用任何语言都能快速的写出来. 何为最小栈?栈最基础的操作是压栈(pu ...

  6. CentOS上安装Git服务器

    1.安装Git 打开控制台,执行以下命令进行安装 $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel ...

  7. Animation Physics and The Realization Of Animation In Browsers

    Animation Physics Background With the development of computer science technology, people are facing ...

  8. 第三方页面嵌入到web项目的方案 之 使用iframe嵌入

    有些项目中可能会遇到这样的需求, 需要在一个项目中嵌入其他的项目的页面或者功能.并且需要这两个页面之间能够进行交互. 本文主要介绍如何实现这种第三方应用的嵌入, 主要有以下几个方向: 1.iframe ...

  9. 搭建SS服务器

    体验: http://ss.ishadowx.com/ centos7 安装shadowsocks客户端 http://blog.csdn.net/guyan0319/article/details/ ...

  10. Visual Studio Code 调整字体大小

    { "editor.fontSize": 14, "window.zoomLevel": 1, } // 将设置放入此文件中以覆盖默认设置 { , , #代码字 ...