《R语言数据挖掘:实用项目解析》——1.13 缺失值(NA)的处理

简介:

本节书摘来自华章计算机《R语言数据挖掘:实用项目解析》一书中的第1章,第1.13节,作者[印度]普拉迪帕塔·米什拉(Pradeepta Mishra),译 黄芸,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.13 缺失值(NA)的处理

缺失值处理在标准数据挖掘场景中是一个重要的任务。在R语言中,缺失值显示为NA。NA既不是字符串也不是数值型变量,它们被当作缺失值的标识。在将数据集导入R语言平台之后,必须检查所有变量,看是否存在缺失值——可使用is.na()函数。示例如下:

image

在上面的代码中,对象x是一个数值型向量,其中包含了一些NA值。is.na()可用于验证是否存在缺失值,如存在,则输出结果为TRUE。如果在存在NA值的情况下做计算,最终会出错或者无结果。我们可以通过修改NA值来替换数据集,或者可以在执行计算时移除那些NA值。如上面的代码所示,在计算对象x的平均值时通过na.rm=TRUE移除NA值。

可以使用na.omit()删除数据集中的缺失值。即使数据集只缺失了一个变量,它也会删除那一整行。缺失值的处理方法有很多种:

  • 平均值替换:对于数据向量中的缺失值,可以用该向量的平均值或中位数替代(不包括NA值)。
  • 局部平均法:取缺失值的局部平均值,通过3或5个周期移动取平均,即取3个周期的缺失数据的平均值作为先验值,根据后验值可确定缺失值应该是多少。
  • 分隔保留:有时替换法无法完成,客户也许会有意将缺失值分隔保留下来,从而隔离地考虑缺失行为。
  • 基于模型:有一些基于模型的缺失值替换法,例如基于回归模型预测缺失值的方法。
  • 聚类法:可使用和回归预测相类似的方法来替换缺失值,可以采用K均值聚类法替换数据集中的缺失值。
相关文章
|
8天前
|
机器学习/深度学习 算法
在R语言中进行缺失值填充:估算缺失值
在R语言中进行缺失值填充:估算缺失值
|
8月前
|
数据采集 数据可视化 数据挖掘
R语言之缺失值处理
R语言之缺失值处理
148 0
|
数据可视化 数据挖掘 数据处理
|
数据可视化 数据挖掘 文件存储
应用统计学与R语言实现笔记(番外篇三)——缺失值的相关系数分析
昨天刚好有位同学来咨询R语言里计算相关系数的一些问题,所以来谈谈关于缺失值的相关系数分析问题,主要是在R语言中如何处理含缺失值数据的相关系数分析。
1288 0

热门文章

最新文章