应对复杂数据:缺失值与不平衡数据处理
1. 处理缺失数据
在机器学习中,缺失数据是一个常见且棘手的问题。之前用于示例的教学数据集很少有缺失数据的问题,但在现实世界的机器学习项目中,缺失数据却普遍存在。R 语言使用特殊值 NA 来表示这些缺失值,而大多数机器学习函数无法直接处理它们。
1.1 缺失数据的影响
随着数据集规模的增大,即使缺失比例相对较小,也可能导致更多问题。例如,在一个有 100 列的数据集里,若缺失率仅为 1%,平均每行也会有一个缺失值。若简单地排除所有包含缺失值的行,数据集的规模将大幅缩减。
1.2 多重插补方法
在经济学、生物统计学和社会科学等领域,处理缺失数据的黄金标准方法是多重插补。它利用统计建模或机器学习技术,根据非缺失特征值来插补所有缺失的特征值。现代多重插补软件通常会给插补值添加随机变化,以避免对数据集的推断产生偏差。R 语言中有许多用于执行多重插补的包,如下表所示:
| 包名 | 说明 |
| ---- | ---- |
| mice | 链式方程多元插补 |
| Amelia | 以著名飞行员 Amelia Earhart 命名,用于处理缺失数据 |
| Simputation | 简单插补,试图通过使用与 tidyverse 兼容的函数简化缺失数据处理 |
| missForest | 使用随机森林进行非参数缺失值插补,可处理具有复杂非线性关系的数据 |
超级会员免费看
订阅专栏 解锁全文
35

被折叠的 条评论
为什么被折叠?



