1,什么是缺失值?
缺失值即是存在特征或标签为空的样本,包含空值的数据会使挖掘过程陷入混乱,导致不可靠的输出。
2,缺失值的来源
造成数据缺失的原因是多方面的,主要有以下几种可能:
(1)有些信息暂时无法获取,致使一部分属性值空缺出来。
(2)有些信息因为一些人为因素而丢失了。
(3)有些对象的某个或某些属性是不可用的,如一个未婚者的配偶姓名。
(4)获取信息的代价太大,从而未获取数据。
3,缺失值的处理
缺失值的处理整体来说有两种方法:一种是直接删除样本或者特征,另外一种是对缺失数据进行补齐。
(1)删除记录
将存在遗漏信息的记录删除,从而得到一个完备的信息表。其适用条件为:
1)记录有多个属性缺失值。
2)被删除的含缺失值的样本与信息表中的数据量相比非常小。
优点:简单粗暴易操作
缺点:
1)这种方法丢弃了大量隐藏在删除对象中的信息。
2)在信息表中对象很少的情况下会影响到结果的正确性,导致数据发生偏离,从而引出错误的结论。
(2)删除特征
在所有样本中,当某个特征的特征值损失太多时(比如70%或者80%),直接删除该特征。
(3)数据补齐
这类方法是基于统计学原理用一定的值去填充空值,从而使信息表完备化。数据挖掘中常用的有以下几种补齐方法:
1)人工填写
这个方法产生数据偏离最小,是填充效果最好的一种。但是当数据规模很大、空值很多的时候,该方法是不可行的。
2)特殊值填充
将空值作为一种特殊的属性值来处理,它不同于其他的任何属性值,如所有的空值都用“unknown”填充。这种方法凭空产生一个概念,可能导致严重的数据偏离,一般不使用。
3)平均值或众数填充
如果空值是数值属性,就使用该属性在其他所有对象的取值的平均值来填充缺失的属性值. ;如果空值是类别属性,就根据统计学中的众数原理,用该属性在其他所有对象出现频率最高的值来补齐缺失的属性值。
4)热卡填充(就近补齐)
对于一个包含空值的对象,热卡填充法在完整数据中找到一个与它最相似的对象,然后用这个相似对象的值来进行填充。不同的问题选用不同的标准来对相似进行判定。
5)K最近邻法
先根据欧式距离或相关分析来确定距离具有缺失数据样本最近的K个样本,将这K个值加权平均来估计该样本的缺失数据。
6)使用所有可能的值填充
这种方法是用空缺属性值的所有可能的属性取值来填充,能够得到较好的补齐效果。但是当数据量很大或者遗漏的属性值较多时,其计算的代价很大,可能的测试方案很多。
7)模型预测
基于完整的数据集训练模型,对于包含空值的对象,将已知属性值代入模型来估计未知属性值,以此估计值来进行填充。