Press "Enter" to skip to content

“特征转换中对缺失值的深入处理/填补技巧”

用于机器学习和数据科学项目的数据填充

Emile Perron提供的照片

众所周知,机器学习算法在处理缺失数据方面并不擅长。特征工程的一部分是通过删除缺失数据行或填充来将缺失数据特征转换为可靠特征。

什么是填充?

填充是一种使用所需/计算出的值来指定或替换缺失行/列值的过程。

在将数据馈送给机器学习模型之前,我们需要删除/填充所有缺失的数据行或列。以下方法可用于转换缺失值特征。

  1. 删除: 最简单的技术是移除具有缺失值的行。这种技术也可以称为完全实例分析(CCA)。如果一个特征的缺失值百分比小于5%,则此方法很有用;否则,可能会出现数据损失问题。
  2. 填充: 这种类型的技术是使用一些计算出的值来填充缺失数据。填充根据单变量和多变量特征进行划分。
  • 单变量: 对于数值特征,可以用均值/中位数/随机值来替代缺失数据。对于类别特征,可以将缺失值替换为众数或作为缺失字符串。sklearn库提供了一个名为Simple Imputer的库,专门处理单变量特征的缺失数据。
  • 多变量: 在这种方法中,我们将使用KNN填充(Hot-Deck填充)算法和迭代方法(即MICE)来填充缺失值。
  • 时间序列: 在这种情况下,我们可以使用线性插值、向前填充和向后填充的方法。

缺失数据中的模式。

  1. MCAR: 这是完全随机缺失数据,缺失数据与列中给定的值无相互关联。它们以随机独立的方式缺失,没有偏倚。
  2. MAR: 这是随机缺失,缺失数据取决于其他列的值。
  3. MNAR: 缺失,非
Leave a Reply

Your email address will not be published. Required fields are marked *