数据预处理中,都有哪些方法能够处理缺失值(missing value)

  统计/机器学习 数据预处理    浏览次数:7500        分享
0

我自己除了直接删掉缺失值对应的行以为,常用的就是用该列的平均值代替,但是总感觉这样不是最好的办法。请问大家还有别的好办法吗?

 

machine learner   2017-09-08 03:16



   2个回答 
3

题主也可以参考这个问题,应该是同样的问题。

训练集中有的特征含有缺失值,一般怎么处理 -SofaSofa

SofaSofa数据科学社区DS面试题库 DS面经

雷猴   2017-09-10 11:48

2

从实际角度出发,首先要了解缺失的原因;其次,看缺失值和预测值的联合分布,看看其中有没有什么蹊跷。

从处理的角度来说,如题主说到的,

  • 可以用均值,也可以用众数,中位数;
  • 可以按类的均值(众数、中位数)补全,比如说数据中A列中的数值有缺失,B列是一个categorical variable,你可以按照B列中的类别,用类别的均值对A列中的数据补全。

我只是抛砖引玉。期待更好的回答!


SofaSofa数据科学社区DS面试题库 DS面经

木子周   2017-09-10 09:48



  相关讨论

如何判断缺失值是否是随机的缺失?

训练集中有的特征含有缺失值,一般怎么处理

怎么对dataframe中的某一列groupby求缺失值的个数?

dataframe每行或者每列中缺失值(na, nan, null)的个数

如何处理聚类中的missing data

怎样处理具有大标签的数据?以及标签数据缺失怎么处理?

决策树或者随机森林能够直接处理missing data吗?

pandas里有没有类似于sql里coalesce的函数来处理缺失值?

pandas DataFrame中去掉缺失值多于50%的列

如何在日期序列中补齐缺失的日期

  随便看看

sklearn SGDClassifier的partial_fit是什么意思?

在使用PCA降维时,有哪些坑?

怎么对pandas dataframe的列求众数

多重检验中的FDR(false discovery rate, 错误发现率)是什么?

怎么在jupyter notebook里查看python的版本?