在数据挖掘的实际工程中,由于数据采集成本、隐私保护等原因,得到的训练数据会有缺失值,现在介绍几种处理缺失值的方法。
1、直接删除有缺失值的实例
该方法主要针对含有缺失值的实例较少的情况,否则,不仅不能充分的利用现有的数据信息,也会使得原有的样本密度变得更加稀疏。
2、人工填写缺失值
该方法主要针对只有少量缺失值的情况。
3、使用一个全局的常量填充缺失值
该方法比较简单,但是用一个全局值代替缺失值,效果未必会好,不一定可靠。
4、使用属性的中心度量(如均值、中位数)填充缺失值
该方法用得比较多,但是只有当中心度量比较逼近缺失值的真实值的时候,该方法才有效。
5、使用与给定实例属同一类的所有样本的的属性的中心度量
在方法4的基础上,该方法仅考虑属于同一类的中心度量。
6、使用最可能的值填充缺失值
可以建立模型对缺失值进行预测,然后用预测得到的值填充缺失值,该方法的效果比较好,但是整体比较麻烦。
7、使用树模型进行空值的处理
该方法是目前用得比较多的方法,很多树模型或者树的组合模型中都用了该方法,具体的原理请参考:http://blog.csdn.net/zxd1754771465/article/details/73550971
参考:《数据挖掘概念与技术》 韩家炜