Skip to content

第2讲

数据清洗

“脏数据比没有数据更可怕”

客户数据分析技术

阶段一:数据基础与客户认知

64学时 | 4学分 | 核心工具:Excel + Kimi/ChatGPT + Power BI

一、情景导入:小林的噩梦

小林花了两天时间分析数据,兴冲冲地向王总汇报:“我发现我们的客户平均年龄是999岁!”

王总差点把咖啡喷出来:“999岁?你确定你分析的是我们的客户数据,不是西游记人物谱?”

小林回去仔细一看,发现数据里到处都是“地雷”:

  • 有人的年龄填了“999”(系统默认值)

  • 有人的地址写了“不知道”和“火星”

  • 同一个手机号138xxxx注册了8个账号

  • 有人单笔订单金额是-500元(负数?退款?)

  • 有人购买数量填了“0”但支付金额是299元小林终于明白了一个道理:“Garbage In, Garbage Out”——垃圾数据进去,垃圾结论出来。不清洗数据就做分析,等于在沙子上盖房子。

二、知识讲解

2.1 什么是数据质量?

数据质量,简单来说,就是数据是否准确、完整、一致、及时、唯一。它是数据分析的基础——如果数据本身就是错的,那么再精妙的分析方法也无法得出正确的结论。我们用五个维度来衡量数据质量:

维度含义反面例子
准确性数据值是否正确年龄=999
完整性是否有缺失地址为空
一致性不同来源的数据是否矛盾CRM显示VIP但订单系统无记录
及时性数据是否反映当前状态用去年的数据做今年的决策
唯一性是否有重复记录同一客户出现多次

2.2 常见数据问题及处理方法

在实际工作中,数据问题主要分为以下几类,每一类都有相应的处理策略:

**缺失值:**数据中存在空白或未填写的字段。处理方法有两种:删除(当缺失比例很小时)或填充(用均值、中位数、众数或AI推荐值填充)。选择哪种方法,取决于业务场景和缺失比例。

**重复值:**同一个客户在数据中出现多次。处理前需要确定“判断标准”——哪些字段组合可以判断为同一客户(如手机号、客户ID等),然后进行去重操作。

**异常值:**明显偏离正常范围的数据点。统计学上的定义是“超出均值±3个标准差”的数据。处理方法包括删除、修正或保留(如果异常值本身有商业意义)。

**格式不一致:**同一字段的格式混用。常见情况包括:日期格式混用(2024.1.1 vs 2024-01-01)、大小写混用、多余空格等。这类问题看似小,但会导致分析结果偏差。

**逻辑错误:**数据本身不符合常理。例如:年龄<0、购买数量为0但金额>0、手机号位数不对等。这类问题需要结合业务经验来判断。

2.3 AI辅助数据清洗

传统的数据清洗方式是手动逐行检查,费时费力且容易遗漏。在AI时代,我们可以用更高效的方式完成这项工作:

  • 传统方式:手动逐行检查,用Excel条件格式高亮、数据透视表筛选,费时费力

  • AI方式:上传数据到Kimi/ChatGPT,用自然语言指令清洗,快速定位问题示例Prompt:“请检查这个Excel文件中的数据质量问题,列出所有缺失值、异常值和重复记录,并给出修复建议”

**关键提醒:**AI能发现大部分问题,但不能完全依赖AI——你需要验证AI的判断是否正确。AI可能会把合理的极端值误判为异常值,也可能遗漏某些隐蔽的逻辑错误。

三、操作步骤:清洗「潮玩星球」数据

步骤1:数据质量诊断

  • 用Excel的条件格式高亮缺失值(空白单元格)

  • 用数据透视表检查重复值

  • 用排序功能找出异常值(如年龄>100的记录)

  • 用Kimi辅助诊断:上传文件,让AI列出所有数据质量问题

步骤2:处理缺失值

练习:对“客户年龄”列的缺失值,用中位数填充。

  • Excel操作:选中空白单元格 → 输入公式=MEDIAN(整列) → Ctrl+Enter

步骤3:去重

练习:找出“手机号”列的重复记录。

  • Excel操作:选中数据区域 → 数据 → 删除重复值 → 选择“手机号”作为判断列

步骤4:处理异常值

练习:将年龄>100的记录标记为异常,用中位数替换。

**思考:**为什么要用中位数而不是均值?因为均值容易被极端值拉偏。例如,如果大部分客户年龄在20-30岁,但有一个年龄填了999,均值会被拉高很多,而中位数不受极端值影响。

步骤5:记录清洗过程

在笔记本上记录:

  • 你发现了什么问题?

  • 用了什么方法处理?

  • 处理后数据有什么变化?

四、课堂练习

练习1:数据质量评估(基础)

以下是一段“脏数据”,请找出所有问题:

客户ID姓名年龄手机号消费金额
C001张三2513812345678299
C002李四99913812345678-50
C00301381234158
C003王五3013812345678200
C004赵六221381234567X

请找出上表中的所有数据问题,并标注问题类型(缺失值/重复值/异常值/格式错误/逻辑错误)。

练习2:清洗方案设计(进阶)

针对上面的脏数据,请设计完整的清洗方案:

  • 每个问题用什么方法处理?

  • 处理的优先级是什么?(先处理什么,后处理什么?)

  • 清洗后预期数据量是多少行?

五、课后任务

  • 项目任务P1-2:清洗「潮玩星球」客户数据集,输出数据质量报告(模板已提供)

  • 进阶挑战:对比“手动清洗”和“AI辅助清洗”的效率,记录各自花了多少时间

  • 思考题:如果你是数据分析师,你会在什么情况下选择“不清洗就直接分析”?这样做有什么风险?


✍️ 课后练习

加载题目中...

客户数据分析技术 — AI时代高职课程