AI数据分析:用DeepSeek做数据清洗

在当今数据驱动的时代,数据分析已成为企业和个人决策的重要工具。随着人工智能技术的快速发展,AI 驱动的数据分析工具正在改变我们处理和分析数据的方式。本文将着重介绍如何使用 DeepSeek 进行数据清洗。

数据清洗是数据分析的基础,其目的是确保数据的准确性、完整性和一致性。常见的数据问题包括:

  1. 缺失值:数据中的某些字段为空。

  2. 重复值:数据中存在重复记录。

  3. 异常值:数据中存在明显偏离正常范围的数值。

  4. 不一致性:数据格式或单位不统一。

如果不进行数据清洗,这些问题会导致分析结果偏差,甚至误导决策。

以下是一个使用 DeepSeek 清洗销售数据的实际案例。

假设我们有一个销售数据表

订单ID 商品ID 商品名 销量 销售额(元)
1001 101 商品A 10 500
1002 102 商品B 5 250
1003 103 商品C 20 1000
1004 101 商品A 15 750
1005 104 商品D 100 5000
1006 105 商品E 1 500
1007 102 商品B 8 400
1008 103 商品C 25 1250
1009 106 商品F 0 0
1010 101 商品A 12 600
1011 104 商品D 30 1500
1012 105 商品E 2 100
1013 107 商品G 50 2500
1014 108 商品H 200 10000
1015 102 商品B 6 300
1016 103 商品C 18 900
1017 109 商品I 0 0
1018 101 商品A 9 450
1019 104 商品D 40 2000
1020 105 商品E 3 150
1021 107 商品G 60
1022 108 商品H 150 7500
1023 102 商品B 7 350
1024 103 商品C 22 1100
1025 109 商品I 1 50
1026 101 商品A 11 550
1027 104 商品D 35 1750
1028 105 商品E 4 200
1029 107 商品G 55 2750
1029 107 商品G 55 2750
1030 108 商品H 180 9000

接下来我们用PromptIDE-提示词开发工具帮我们生成一个数据清洗的提示词。

生成的提示词如下:


# 角色: 
数据分析与数据预处理专家

## 背景: 
用户在处理数据时遇到数据质量问题,需要对数据进行清洗以确保数据的准确性、完整性和一致性,从而为后续的数据分析或机器学习模型训练提供高质量的数据基础

## 注意:
1、数据清洗是一个复杂且耗时的过程,但它是确保数据质量的关键步骤。
2、通过有效的数据清洗,可以显著提高数据分析的准确性和可靠性。

## 技能:
1、熟悉数据清洗的常用技术和工具。
2、具备强大的数据处理和分析能力。
3、能够识别和处理数据中的异常值和缺失值。
4、能够设计和实施数据清洗流程。

## 目标:
1、识别并处理数据中的异常值。
2、填补或删除数据中的缺失值。
3、标准化数据格式,确保数据一致性。
4、去除重复数据。
5、验证数据清洗后的质量。

## 约束:
1、确保数据清洗过程不会引入新的错误。
2、遵守数据隐私和安全的相关规定。
3、在数据清洗过程中保持数据的原始结构和含义。


## 输出:
1、清洗后的数据应以结构化表格形式输出。
2、数据清洗报告,包括详细记录清洗过程、问题发现及解决方法。
3、建议的进一步数据预处理步骤。

## 工作流:
1、接收并分析用户提供的数据集和清洗规则。
2、识别数据中的异常值和缺失值。
3、根据清洗规则处理异常值和缺失值。
4、标准化数据格式,去除重复数据。
5、验证数据清洗后的质量,生成清洗报告。


## 初始化:
Initialization: 在第一次对话中,请直接输出以下:欢迎使用数据清洗服务。请提供您需要清洗的数据文件,我将按照数据隐私和安全原则,为您进行高效、透明的数据清洗。您可以上传数据文件,告诉我您关注的数据质量问题,我将为您提供专业的解决方案。

接下来我们将这个提示词发给大模型看看效果。

数据清洗报告

1. 数据问题识别

通过初步分析,发现以下数据质量问题:

  1. 重复值:订单ID为 1029 的记录出现重复。
  2. 缺失值:订单ID为 1021 的记录中,销售额(元) 缺失。
  3. 异常值
    • 销量 为 0,但 销售额(元) 也为 0(订单ID:1009 和 1017),可能是无效记录。
    • 销量 和 销售额(元) 的比例异常(例如:订单ID:1006,销量为 1,销售额为 500,可能存在输入错误)。

2. 数据清洗过程
2.1 删除重复值

删除订单ID为 1029 的重复记录。

2.2 填充缺失值

对于订单ID为 1021 的缺失值,根据商品G的平均单价进行填充:

  • 商品G的销售额 = 销量 × 单价
  • 计算商品G的平均单价:(2500 + 2750) / (50 + 60) ≈ 48.18
  • 订单ID 1021 的销售额 = 60 × 48.18 ≈ 2891 元

填充后:

订单ID 商品ID 商品名 销量 销售额(元)
1021 107 商品G 60 2891
2.3 标准化异常值处理
  1. 销量为 0 的记录

    • 删除订单ID为 1009 和 1017 的记录,因为其销量和销售额均为 0,属于无效数据。
  2. 比例异常记录

    • 对于订单ID 1006(销量为 1,销售额为 500),根据商品E的平均单价分析:
      • 商品E的平均单价 = (500 + 100 + 150 + 200) / (1 + 2 + 3 + 4) = 950 / 10 = 95 元
      • 修正订单ID 1006 的销售额为 1 × 95 = 95 元。

修正后:

订单ID 商品ID 商品名 销量 销售额(元)
1006 105 商品E 1 95

3. 数据清洗结果

清洗后的数据集如下:

订单ID 商品ID 商品名 销量 销售额(元)
1001 101 商品A 10 500
1002 102 商品B 5 250
1003 103 商品C 20 1000
1004 101 商品A 15 750
1005 104 商品D 100 5000
1006 105 商品E 1 95
1007 102 商品B 8 400
1008 103 商品C 25 1250
1010 101 商品A 12 600
1011 104 商品D 30 1500
1012 105 商品E 2 100
1013 107 商品G 50 2500
1014 108 商品H 200 10000
1015 102 商品B 6 300
1016 103 商品C 18 900
1018 101 商品A 9 450
1019 104 商品D 40 2000
1020 105 商品E 3 150
1021 107 商品G 60 2891
1022 108 商品H 150 7500
1023 102 商品B 7 350
1024 103 商品C 22 1100
1025 109 商品I 1 50
1026 101 商品A 11 550
1027 104 商品D 35 1750
1028 105 商品E 4 200
1029 107 商品G 55 2750
1030 108 商品H 180 9000

4. 下一步建议
  1. 数据验证:对清洗后的数据进行统计分析,确保数据分布合理,无异常值。
  2. 特征工程:如果需要构建机器学习模型,建议进一步对数据进行特征提取和标准化。
  3. 数据监控:建议建立数据质量监控机制,定期检查数据中的异常情况。


总之,我们借助PromptIDE+deepseek就可以轻松帮我们完成数据清洗了。