[每日问答]缺失值如何处理?

1.删除
当某个变量或者某个样本中缺失值占比过大时,那么我们可以认为这一变量或者样本没有意义,可以直接删除。


2.补全
(1)用平均值、中值、分位数、众数、随机值等替代。效果一般,因为等于人为增加了噪声。
(2)用其他变量做预测模型来算出缺失变量,效果比方法(1)略好。有一个根本缺陷,如果其他变量和缺失变量无关,则预测的结果无意义。如果预测结果相当准确,则又说明这个变量是没必要加入建模的。
(3)把变量映射到高维空间。比如性别,有男、女、缺失三种情况,则映射成3个变量:是否男、是否女、是否缺失。连续型变量也可以这样处理,比如Google、百度的CTR预估模型,预处理时会把所有变量都这样处理,达到几亿维。这样做的好处是完整保留了原始数据的全部信息,不用考虑缺失值和线性不可分之类的问题,缺点是计算量大大提升。


3.忽略
有一些模型如随机森林,人工神经网络等,自身能够处理数据缺失的情况,在这种情况下不需要对缺失数据做任何的处理,这种做法的缺点是在模型的选择上有局限。


参考文献

https://www.zhihu.com/question/26639110

猜你喜欢

转载自blog.csdn.net/cloud_xiaobai/article/details/72083968