如何处理缺失数据

2025 年 1 月 7 日 | 阅读 9 分钟

引言

在某些情况下,丢失少量观测值可能不会对数据集造成重大问题,但在数据分析和机器学习领域,缺失数据是一个重要的问题。在任何分析或预测模型中,数据是核心,有时,数据缺失会导致结果发生变化;做出的决策是错误的,并影响现有模型的性能。因此,处理缺失数据是数据专业人士不应回避的,而应准备好应对。本文将探讨处理缺失数据的不同方法、它们涉及的内容以及建议使用的方法。

理解缺失数据

缺失数据类型

在深入探讨处理缺失数据技术之前,了解缺失数据的不同类型及其潜在机制至关重要。

  1. 完全随机缺失 (MCAR):数据缺失与任何可能已收集、观察或推断的其他数据完全无关。缺失数据可能是随机缺失的,无法与数据集中的任何其他变量相关联。
  2. 随机缺失 (MAR):插补是根据其他数据的存在来构建某些数据期望的过程,而不是因为缺失数据本身的值。例如,在考虑调查响应时,其某些特征,如响应成为缺失值的可能性,可能取决于特定响应者的年龄。
  3. 非随机缺失 (MNAR):因此,缺失数据是给定人群中现有数据值的固有属性。例如,样本可能包含高收入人群,而这些人可能选择隐藏其收入,因此缺失的收入数据不是随机缺失的。

了解这些类型反过来支持选择正确的管理缺失数据的方法。

缺失数据的原因

缺失数据可能来自多种来源,包括:

  • 人为错误:输入过程中的拼写错误以及数据收集过程中的错误。
  • 调查不响应:对提出的某些问题或事项未予置评。
  • 系统性问题:包括不完整的抽样或偏差以及数据收集设备或工具的测量误差。
  • 数据丢失:文件被删除或因任何原因落入不当之手、恶意软件、病毒攻击等。

处理缺失数据的策略

处理缺失数据:以下是可用于处理缺失数据的方法:

1. 删除法

  • 列表删除:处理不响应的一种常见方法是列表删除或完整案例分析,即删除包含一个或多个缺失值的案例或整个记录。此方法非常简单易用,但正如所见,当许多观测值存在缺失值时,丢失的数据量可能会非常大。当数据模式为 MCAR 且缺失数据百分比很小时,应使用列表删除来处理缺失数据。
  • 成对删除:处理缺失值的另一种方法是成对删除,它仅在执行与变量对相关的分析时删除缺失值。例如,如果两个变量正在进行相关性分析,则会删除在这两个变量上具有缺失数据的样本。此方法可以保留更多数据,但许多分析的样本量可能会不匹配。

2. 插补法

用期望值替换缺失值的过程称为插补。插补技术如下:这种类型的插补有不同的方法,各有优缺点。

  • 均值/中位数/众数插补:这只是用所获得值的均值、中位数或众数来填充缺失值。此方法的缺点是它非常快速且易于应用,但可能导致数据集变形和变化。
  • 热卡插补:热卡插补通过识别数据集中已观察到数据的其他案例,并使用这些值替换另一个案例中的缺失值来工作。相似性也可以通过类似特征的存在或时间位置等因素来定义。此方法更好,因为它有助于保持均值插补中观察到的缺失值的分布;然而,它有时可能在计算上非常繁重。
  • 回归插补:另一种基于回归的方法是回归插补,它基于数据集中的其他变量来预测缺失值。此方法考虑了变量之间关系的力量,但当回归模型分析中形成的假设不满足时,可能会产生偏差。
  • 多重插补:多重插补是一种更可靠的方法,它不将单个值归咎于缺失数据,而是为同一缺失数据开发多个不同的插补,然后将从这些多个数据集中得出的结果合并起来,以反映此插补方法固有的变异性。此方法也非常受欢迎,强烈推荐使用,包括在 MAR 数据案例中,尽管应用起来可能相当具有挑战性。

3. 基于模型的方法

  • 期望最大化 (EM) 算法:EM 算法是一种处理缺失信息的复杂过程。它假设对数组的缺失元素和数据的整体分布进行连续估计。从上面的讨论可以看出,此方法适用于 MAR 数据,并且可以捕获非线性数据结构,但它的计算成本相当高。
  • 最大似然:最大似然估计是一种用于估计和最大化观察数据和缺失值可能性的参数的技术。此方法在统计学上是高效的,适用于处理 MAR 和 MNAR 数据,但它需要关于数据分布的几个假设。

4. 高级技术

  • 机器学习方法:以下是一些可用于处理缺失数据的方法:一些更复杂的技术包括 K-最近邻插补、随机森林插补和深度学习模型插补。这些技术利用机器学习算法的能力,将复杂的变量依赖关系拟合到模型中,并正确预测缺失值。它们对于添加复杂的模式(包括大型数据集群)尤其有益。
  • 数据增强:数据增强实际上是获取额外数据点以弥补实际数据不足的延伸。插补缺失数据是通过各种方法(包括 bootstrapping 和合成数据生成)构建活动缺失值的实践。幸运的是,也有一些类似的方法效果很好,特别是在缺失值比例相当大的情况下;然而,应在考虑某些潜在的偏差出现的情况下应用此方法。

最佳实践

缺失数据管理是大多数研究中的常见问题,妥善处理至关重要;因此,建议采取以下最佳实践:

这表明根据您处理缺失数据的方式,您将获得不同的解决方案。这就是为什么有必要对所选方法进行干预分析,以估计其对分析总体结果的可能影响。另一种了解发现结果的方法是进行敏感性分析,该分析涉及比较通过各种方法获得的结果。

1. 使用领域知识

另一方面,当面对缺失数据的情况时,常识可以提供巨大的帮助。我意识到知道数据缺失的原因可以减少缺失,并影响插补方法的选择和结果分析。涉及领域专家的专家意见可以使分析质量更高。

2. 验证插补模型

还应注意,使用插补模型构建的变量必须进行指标检查。这可以通过将插补值与“已知”值进行比较来完成,例如,在保留样本中,或者使用交叉验证方法。通过确保插补值真实且与记录的数据相关,保持分配的性能至关重要。

3. 记录和报告缺失数据

应清楚说明如何处理缺失数据的标准协议,以及使用这些协议的理由。这将增加分析的方法健全性和可靠性。必须描述缺失数据及其程度、解决问题的方法以及所做的假设。这将使其他学者能够检查所呈现结果的准确性和有效性。

4. 持续监控和更新

缺失数据从未消失;这是一个持续处理的过程。然而,数据可用性或环境的变化可能需要对缺失数据进行更警惕、更频繁、更系统的审查。定期检查以避免分析过时,始终保持最新。

案例研究

案例研究 1:临床试验

在临床试验中,当某次随访时信息丢失或患者退出研究时,可能会出现缺失数据。使用临床试验数据时,会出现记录不完整的情况,并且必须进行适当的分析以避免任何偏倚。

场景

在一项旨在预测一种新合成药物有效性的临床试验中,由于参与者退出,收集到的信息中有 10% 通常不完整。这表明缺失可能是由参与者出现的副作用引起的,这使得数据为 MAR。

方法

  • 模式分析:下一步是评估缺失数据的模式是否应为 MAR,以维持随机缺失的假设。
  • 多重插补:为了处理缺失值,进行多次插补,创建多个数据集供使用。
  • 合并分析:为了提高分析的稳健性,我们逐步插补数据中的缺失值,并将插补过程应用于每个插补数据集。

结果

多重插补能够进行更可靠的分析,因为药物疗效的估计可以适应缺失数据。

案例研究 2:客户调查

在许多客户满意度调查中,会遇到缺失值,这可能导致无法准确评估消费者的满意度水平甚至偏好。

场景

实际上,客户满意度调查中有 15% 的响应是基于与产品满意度相关的问题。经分析,缺失情况在不同客户人口统计学特征之间似乎没有显著差异。

方法

  • 评估:检查 s 值,确定可归因的缺失值比例,并确保 MCAR 假设成立。
  • 均值插补:均值插补是一种处理缺失数据的简单策略,当数据缺失是随机的 (MCAR) 时适用。
  • 验证:必须使用处理器验证插补数据,并比较插补过程启动之前和之后的调查结果。

结果

均值插补是处理缺失数据最直接的方法之一;它有助于确定客户满意度趋势,并允许在不损害调查完整性的情况下分析调查数据。

案例研究 3:金融数据

在金融数据集中,我们遇到更多缺失值,因为组织报告不总是完整的;可能存在报告滞后、报告不准确或披露某些数据的限制。

场景

唯一缺失的数据是关于收入和支出的信息。所有可识别的金融数据集都有 20% 的缺失值,并被假定为 MNAR,因为一些公司不披露这些细节。

方法

  • 模式分析:检查缺失数据模式相对于其他方面,以确保非 MNAR 模型是不可变的。
  • 基于模型的方法:通过回归来插补缺失值,特别是通过从与其他特定变量相关的其他财务数据来估计它们。
  • 敏感性分析:进行敏感性分析,以便插补后的数据与财务模型和预测没有实质性差异。

结果

基于模型的方法, incorporated in Altman et al.'s model, allows for a more precise approximation of missing values in the numeric data, providing a higher level of financial analysis and its predictive implications accuracy. (基于模型的方法,整合在 Altman 等人的模型中,可以更精确地近似数值数据中的缺失值,从而提高财务分析及其预测含义的准确性。)


下一主题CNN 计算