浅谈 数据清洗

2020-04-18  本文已影响0人  秋夜雨凉

预处理阶段

该阶段主要做2件事:

  1. 将数据原封不动的抽取导入,切记永远不要对源数据进行直接的清洗修改。

  2. 了解数据:

null值清理

大部分数据都存在着Null值的情况,处理null值也有很多方法。

  1. 确认null值分布:对每个字段都计算出null值比例。然后整理出每个字段的重要性(业务)和缺失值占比。

  2. 根据重要性和缺失值进行处理。处理方法可参考下图。

image.png

补充:

常用的计算方式为均值、中位数、众数、简单的回归计算。

统一内容格式

我们要输出的数据格式和获得的数据格式有时候并不一致。如下

输入格式 输出格式
一万三千(String) 13000(Int)
二零一九年四月(String) 2019-04(date)
20190401(Int) 2019-04-01(date)
  1. 整理出每个字段需要的格式和字符。

  2. 格式转化

    将不同于输出格式的数据进行格式转换。

  3. 去除不该有的字符

    最常见的就是莫名其妙的空格,及一些文本的\t等等。此处需要半自动半人工的方式来解决。

  4. 内容与该有的内容不符

比如姓名和性别位置写错,或者出现一些很奇怪的字符。此处需要追朔数据源头。详细识别数据类型。大多要用人工的方式来解决,

逻辑错误清理

此处主要清理使用简单逻辑即可发现问题的数据。

  1. 去重,最常见的逻辑错误。

  2. 去除逻辑明显不合理的值:比如200岁的人。这种数据要么删掉,要么按照缺失值来处理。

  3. 修正矛盾内容:有的字段可以相互验证,例如年龄和身份证号。如果两个字段出现矛盾,那么取来源更可靠的字段数据。

上一篇 下一篇

猜你喜欢

热点阅读