处理数据时,遇到缺失值与异常值怎么办?

缺失值:是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的。

异常值:异常值是指数据集中存在不合理的值,又称离群点。一组测定值中与平均值的偏差超过两倍标准差的测定值,与平均值的偏差超过三倍标准差的测定值,称为高度异常的异常值。

缺失值处理

  • 删除。如果有缺失值的样本占比总样本数量很少的情况下,可以进行删除;或者某列特征缺失值占比很大,且重要程度不大,可以删除整列
  • 不做处理。树模型、神经网络、贝叶斯模型对于缺失数据不是非常敏感。因此可以采用这些模型
  • 人工填充。适用于数据量小的场景
  • 特殊值填充。将空值作为一种特殊的属性值来处理,如所有的空字符串都用“unknown”填充。
  • 统计量值填充。均值、最大值、最小值、众数、高频数据
  • 热卡填充(就近补齐)。对于有空值的样本,热卡填充指在数据集合中找到一个与它最相似的样本,然后用这个相似样本的值代替空值。不同的问题选用不同的标准来对相似进行判定。
  • KNN。根据欧式/马氏等距离方法来确定距离具有缺失数据样本最近的K个样本,将这K个值加权平均来估计该样本的缺失数据。
  • 回归模型进行填补。无空值样本训练回归模型,对包含空值的样本进行预测,用预测结果进行填充。
  • 插值。拉格朗日插值
  • C4.5方法。通过寻找属性间的关系来对遗失值填充。它寻找之间具有最大相关性的两个属性,其中没有遗失值的一个称为代理属性,另一个称为原始属性,用代理属性决定原始属性中的遗失值。这种基于规则归纳的方法只能处理基数较小的名词型属性。

异常值处理

异常值,即在数据集中存在不合理的值,又称离群点。

如何判断异常点?

  • 箱型图法
  • 3 σ \sigma σ准则。根据正态分布的定义可知,距离平均值3 σ \sigma σ之外的概率为 P ( ∣ x − μ ∣ > 3 σ ) < = 0.003 P(|x-\mu|>3\sigma) <= 0.003 P(xμ>3σ)<=0.003 ,这属于极小概率事件,在默认情况下我们可以认定,距离超过平均值3 σ \sigma σ的样本是不存在的。因此,当样本距离平均值大于3 σ \sigma σ,认为该样本为异常值。
  • 距离计算
  • 机器学习模型

如何解决?

  • 删除
  • 视为缺失值,按照缺失值方法处理
  • 均值修正
  • 不处理

欢迎关注微信公众号(算法工程师面试那些事儿),本公众号聚焦于算法工程师面试,期待和大家一起刷leecode,刷机器学习、深度学习面试题等,共勉~

算法工程师面试那些事儿

猜你喜欢

转载自blog.csdn.net/qq_40006058/article/details/121388826