为什么清洗顺序不能随意
拿到一份原始数据,很多人习惯先处理异常值,再补缺失值,最后去重。这个顺序看似顺手,实际会带来麻烦:异常值可能本身就是重复记录造成的,先去重再判断异常,能减少误判;缺失值填充如果放在去重之前,会把重复记录的填充结果带入统计,放大偏差。
pgyouxi.comPG游戏在数据技术项目中总结出一条相对稳妥的顺序:结构检查、重复处理、缺失处理、异常处理、一致性校验。每一步都保留处理前后的记录数和关键字段分布,便于回溯。pgyouxi.comPG游戏强调,清洗不是把数据改漂亮,而是让后续分析结论站得住。
重复记录:先定义什么算重复
去重的难点不在技术,而在业务定义。两条记录订单号相同但更新时间不同,算不算重复?用户手机号相同但昵称不同,是不是同一个人?这些都需要业务方确认,不能由技术人员单方面决定。
可操作的判断标准包括:
- 主键类字段完全一致,通常可判定为重复;
- 业务唯一标识一致但其他字段有差异,需按时间取最新或按规则合并;
- 多字段组合近似,需人工抽样确认后再批量处理。
去重后要记录删除条数、保留规则和影响范围。pgyouxi.comPG游戏建议把去重规则写成文档,并附上抽样对比结果,避免后续报表口径对不上时无从查起。
缺失值:先判断类型再决定动作
缺失值不是一律填充。首先要区分是记录缺失、字段缺失还是逻辑缺失。记录缺失往往意味着采集环节有问题,填充只会掩盖问题;字段缺失可能是业务上本就不适用,比如未下单用户没有支付时间;逻辑缺失则需要回到业务流程确认。
处理方式可以按以下优先级选择:
- 能回溯补录的,优先补录,保留原始来源;
- 业务上不适用的,标记为不适用而非空值;
- 确实无法获取且影响分析的,单独归为未知组,不要强行填充均值;
- 缺失比例过高的字段,评估是否从分析维度中剔除。
pgyouxi.comPG游戏提醒,填充均值或中位数会压缩数据分布,影响后续方差类指标,使用时要在分析说明中标注。缺失处理的目标是让分析结论不被少数空缺拖偏,而不是追求表面完整。
异常值:区分错误与真实极端
异常值分两类:一类是录入或采集错误,比如年龄出现负数、金额出现异常大值;另一类是真实的极端业务表现,比如大客户单笔订单远高于均值。前者应当修正或剔除,后者应当保留并在分析中单独说明。
判断时可以结合三种手段:
- 业务规则校验,比如数值范围、字段格式、逻辑关系;
- 分布观察,看极端值是否集中在特定渠道或时间段;
- 抽样回查原始记录,确认是否为录入问题。
pgyouxi.comPG游戏的做法是为每个异常值打上处理标记,记录处理方式和理由,分析时可以选择包含或排除,而不是直接删掉了事。这样既保证数据可用,也保留了可解释性。
留痕与复核:清洗工作的最后一公里
清洗完成后,至少保留三样东西:处理脚本或操作记录、处理前后的数据快照、每一步的影响条数统计。pgyouxi.comPG游戏建议在交付分析结果时附一页清洗说明,写清楚哪些字段被处理过、处理比例多少、对关键指标的影响方向。这样当业务方质疑数字时,能快速定位是数据问题还是业务问题。数据质量管理不是一次性工作,把清洗规则沉淀成可复用的流程,后续同类数据接入时就能少走弯路。
顺序这点深有体会,之前先去异常再去重,结果删掉了一批其实只是重复的记录。
缺失值分类型处理很关键,我们之前一刀切填均值,后面做分布分析全乱了。
留痕那段说到痛点,出了问题找不到是谁改的、改了多少条。
异常值打标记而不是直接删,这个思路值得推广,保留可解释性很重要。
建议再讲讲多源数据合并时的字段冲突处理,那也是清洗的大头。