机器学习-数据清洗(一)

数据的预处理(清洗、集成、变换、规约)

​ 在进行数据挖掘中,原始海量的数据中存在着大量不完整(有缺失值)、不一致、有异常的数据,严重影响到数据挖掘建模的执行效率,甚至可能导致挖掘结果的偏差,所以对首先对数据进行清洗就显得尤为重要,在数据清洗完成后,后续伴随着数据集成、转换、规约等一系列的处理,该过程就是数据预处理。数据预处理一方面是要提高数据的质量,另一方面是要让数据更好地适应特定的挖掘技术或工具。统计发现,在数据挖掘的过程中,数据预处理工作量占到了整个过程的60%。

数据预处理的主要内容包括数据清洗、数据集成、数据变换和数据规约.

1、数据清洗(Data Cleaning)

目标:修复数据中的噪声、缺失、不一致等问题。

1.1 、具体内容:

1.1.1、缺失值处理

  • 方法:删除缺失记录、均值/中位数填充、插值法、模型预测填充。
  • 示例:年龄字段缺失时,用数据集的平均年龄填充。

1.1.2、异常值处理

  • 方法:Z-score法(标准化)、IQR(四分位距法)、描述性分析、散点图、箱形图、直方图查找异常并处理。
  • 示例:检测到某商品价格超过正常范围的3倍标准差,判定为异常并剔除。

1.1.3、噪声数据

  • 方法:分箱、回归、孤点分析。
  • 示例:

1.1.4、重复值处理

  • 方法:删除完全重复的行。
  • 示例:电商订单数据中同一订单被重复记录两次,删除冗余行。

2、数据集成(Data Integration)

目标:涉及整合多源数据,解决冗余和实体识别冲突。

2.1、具体内容:

2.1.1、实体识别

  • 方法:统一字段命名(如 CustomerID 和 Cust_ID 合并为同一字段)。
  • 示例:合并销售表(含 ProductID)和库存表(含 ProdID),需统一字段名。

2.1.2、冗余数据处理

  • 方法:分析相关性,删除冗余列(如同时存在 身高(cm) 和 身高(m))。
  • 示例:合并两个客户表时,发现 年龄 和 出生年份 存在冗余,删除其一。

3、数据变换(Data Transformation)

目标:将数据转换为适合数据挖掘分析的格式,有规范化、离散化、特征构造等。

3.1、具体内容:

3.1.1、规范化(Normalization)

  • 方法:最小-最大标准化(缩放到 0,1)、Z-score标准化(均值为0,方差为1)。
  • 示例:将收入从 1000, 100000 缩放到 0,1

3.1.2、离散化

  • 方法:分箱(等宽/等频)、聚类离散化。
  • 示例:将年龄分为 0-18, 19-35, 36-60, 60+

3.1.3、特征构造

  • 方法:生成新特征(如从日期中提取星期几)。
  • 示例:将 购买日期 转换为 季节 或 是否为周末。

4、数据规约(Data Reduction)

目标:减少数据规模但保持完整性,同时保留关键信息。

4.1、具体内容:

4.1.1、属性(维度)规约

  • 方法:主成分分析(PCA)、删除低方差特征、逐步回归。
  • 示例:用 PCA 将 20 维数据降为 3 维主成分。

4.1.2、数值规约

  • 方法:聚类抽样、分层抽样、直方图分箱。
  • 示例:从 100 万条数据中随机抽取 10% 进行分析。

5、示例

相关推荐
冬奇Lab9 小时前
Workflow 系列(03):状态管理——持久化、幂等性与版本绑定
人工智能·工作流引擎
冬奇Lab9 小时前
每日一个开源项目(第146篇):openpilot - 开源自动驾驶辅助系统,曾在 Consumer Reports 评测中超过特斯拉 Autopilot
人工智能·开源·自动驾驶
吴佳浩11 小时前
AI 工程师知识地图:模型格式、框架、部署工具一次讲明白
人工智能·aigc·ai编程
IT_陈寒11 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
码农胖大海11 小时前
AI额度不够用的解决方案
人工智能
后端小肥肠12 小时前
小红书虚拟商品怎么做?我先用 Skill 跑通了壁纸品类
人工智能·aigc·agent
feiyu_gao12 小时前
从零搭建个人 AI 工作台:一个管理者的 3 个月实验
人工智能·aigc·团队管理
程序员cxuan13 小时前
一句话,让你用上 GPT-5.6
人工智能·后端·程序员
机器之心13 小时前
AI圈刚开始谈Loop Engineering,两位95后博士已经盯上了人类闭环数据
人工智能·openai