在数据分析的过程中,数据的前处理是非常重要的。数据中出现“NA”是非常常见的,“NA”指“Not Available”,出现NA常常会影响我们进行数据分析,这是因为NA是会传染的。

NA值的影响

  • 看以下例子:
> a <- c(1,2,3,4,5)
> mean(a)
[1] 3

如果出现NA,情况就不一样了

> a <- c(1,2,3,4,5,NA)
> mean(a)
[1] NA

由此可见,NA值会影响到我们进行统计分析,那么如何去除NA值或者在分析的过程中忽略NA值呢?

去除行NA值

  1. 利用complete.cases()函数
    complete.cases()函数的效果如果该行或该列存在任何NA值,都会剔除该行或列,使用complete.cases()后效果如下:
> # 创建数据框
mydata <- data.frame(name=c("M","T","J","H","F"),sex=c("F","M",NA,"M","M"),score=c(90,85,75,89,NA))
> mydataname  sex score
1    M    F    90
2    T    M    85
3    J <NA>    75
4    H    M    89
5    F    M    NA
> mydata<-mydata[complete.cases(mydata),]
> mydataname sex score
1    M   F    90
2    T   M    85
4    H   M    89
  1. dplyr包
    dplyr包filter()函数,也可实现筛选不包含缺失值的行
dplyr::filter(df,  !is.na(columnname))
> dplyr::filter(mydata,  !is.na(score))name  sex score
1    M    F    90
2    T    M    85
3    J <NA>    75
4    H    M    89

R语言剔除包含NA值的行相关推荐

  1. R语言怎么把NA值替换成0?

    有时候我们通过一些计算函数处理完数据,经常会出现NA值(缺失值),但实际意义代表的是0,以前看了一大堆,讲什么什么包的函数处理,但是要么处理完数据类型变成字符型了,要么行名列名不见了,前两天发现一个很 ...

  2. R语言删除包含NA的列

    测试数据如下: Itun <- data.frame(v1 = c(1,1,2,1,2,1), v2 = c(NA, 1, 2, 1, 2, NA)) Itun[ , colSums(is.na ...

  3. R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行、按照索引移除数据行、删除包含NA值的所有数据行、删除具体列包含NA值的数据行

    R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行.按照索引移除数据行.删除包含NA值的所有数据行.删除具体列包含NA值的数据行 目录

  4. R语言删除包含缺失值的行并将字符数据列(character)转化为因子列(factor)实战

    R语言删除包含缺失值的行并将字符数据列(character)转化为因子列(factor)实战 目录

  5. R语言中的特殊值 NA NULL NaN Inf

    这几个都是R语言中的特殊值,都是R的保留字, NA:Not available  表示缺失值   用 is.na() 来判断是否为缺失值 NULL:表示空值,即没有内容  用 is.null() 来判 ...

  6. R语言使用diag函数生成一个N行N列的单位矩阵

    R语言使用diag函数生成一个N行N列的单位矩阵 目录 R语言使用diag函数生成一个N行N列的单位矩阵 R语言是解决什么问题的? R语言使用diag函数生成一个N行N列的单位矩阵 安利一个R语言的优 ...

  7. R语言read.csv()读入行不规则数据

    R语言read.csv()读入行不规则数据出错 > csv4=read.csv("CondenOriginal.csv") Error in file(file, " ...

  8. 如何在R代码中找到一个值的行号

    如何在R代码中找到一个值的行号? 例如: 在以下一组值中,如何在第4列中找到特定值的行号? 如何使用R代码命令找到列4中的值"1578"的行号. > mydata_2sex ...

  9. R语言量化:alpha值和beta值

    量化投资中经常提到的alpha(收益)和beta(收益)是从资本资产定价模型(CAPM)中衍生出来的概念.CAPM是一个给风险定价的基本模型,它认为只有系统风险(Systematic risk)才能带 ...

最新文章

  1. Spring+Shiro的踩坑
  2. 「猜题第一篇」2019年大学生电子设计竞赛
  3. Node.js umei图片批量下载Node.js爬虫1.00
  4. UNIX网络编程--读书笔记
  5. 黑群晖vmm专业版_Virtual Machine Manager 专业版打造高效安全虚拟环境
  6. unet服务器向客户端发消息,unet
  7. [转] 数据挖掘 机器学习 模式识别的关系
  8. altium designer 常用元件封装
  9. 贝叶斯派的概率图模型概述(总)
  10. 程序员自学成才-老程序员给新手的四条自学经验
  11. 另辟蹊径 直取通州的“墨迹天气”APP应用的成功故事
  12. 国际服务贸易重点整理
  13. html+视频添加字幕,给视频加滚动字幕,给视频加字幕制作mv 录制的视频配背景音乐...
  14. Sign In with Apple - 使用苹果账号登录你的应用
  15. Lect5_Model_free_Control
  16. 图论(图、树基本知识)
  17. 不换门可以改开门的方向吗_不换门可以改开门的方向吗?
  18. win732位升级64位教程
  19. Grafana报错 414 Request-URI Too Large
  20. 绝对定位和相对定位的区别(详解)

热门文章

  1. 2007年12月全球十大搜索引擎
  2. OpenCV学习——基本操作之绘制几何图形
  3. 如何实现移动端点击下拉箭头显示全部文字
  4. AudioManager 蓝牙sco连接相关接口
  5. my read law / notarization / gongzheng
  6. linux通过手机热点上网耗流量,电脑通过手机热点上网,是不是比手机用流量更费一些?...
  7. websocket 服务器外网访问
  8. 【日常训练】2019-10-24am_xjoi结界[生与死的境界]/codeforces878E_贪心
  9. SVN 第一次上传项目和问题的解决方法
  10. 使用IJKPlayer播放视频实现了一些播放视频的基本操作