数据清洗主要工作

Posted liyuewdsgame

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据清洗主要工作相关的知识,希望对你有一定的参考价值。

一. 数据清洗主要工作

  1. • 噪声(Noise)消除

• 噪声包含错误值(类别型字段)及离群值(数值型字段)

• 噪声使探勘结果有相当大的偏差,必须将噪声移除或将其做适当的处理

  2. 空值(Missing Value)填补

• 人工填补
• 自动填补

 

二.噪声如何处理

  1.  噪声侦测方法

• 针对类别型字段,检视其分布 (找错误值)
• 针对数值型字段,检视其分布 (找离群值)

    •  平均值法

• 平均值 (+-)3 * 标准差

            (1个标准差: 68%; 2个标准差: 95%; 3个标准差: 99.7%)

    • 四分位数法

• IQR = Q3 – Q1

• Q1 – 1.5 * IQR ~ Q3 + 1.5 * IQR

  2.噪声处理方法

• 错误值(类别型字段)

视为空值

• 离群值(数值型字段)

    1.  视为空值
    2.  天花板/地板法(盖帽法) (NumericCleaner)
    3.  函数校正法 (AddExpression): 取log10, log2, ln等

三、数据空值处理

  1. 直接忽略法:当数据有遗缺值时,则将整笔数据删除

• 处理数据遗缺最简单的方法  
• 搜集的数据量很多,而遗缺数据只占一小部分时,便可直接删除

• 遗缺数据占整个字段所有数据的比例过大时(>50%),便可直接删除

• 进行分类建模时,若数据的分类标记(Class Label)为空值,这笔数据因无法被正确分类,便可直接删除

  缺点

• 数据遗缺比例很可观时,会造成大量数据流失

  2 转换成指示变量(Indicator Variable)

当字段有遗缺值时,则将整个字段转换成指示变量(Indicator Variable)

• 处理数据遗缺的特殊方法

• 遗缺数据占整个字段所有数据的比例过大时(>50%),便可使用此法

• 使用此法的理论基础为空值也是行为的另一种呈现

3.人工填补

  当某会员数据的生日字段有遗缺,可打电话询问该会员,以取得其生日并加以填补

  • 了解数据遗缺原因,采用适当的值填补

    1. 性别可用身分证字号来补  
    2.  一些比例型的字段

    • 缺点

      当数据遗缺较多时,耗时且人力负担沉重

4.自动填补

(1)类别字段

• 填入一个通用的常数值
  •如填入“未知/Unknown”,成为一个新的类别
• 填入该字段的众数(Mode)
  • 缺点是不够客观
  • 可用分群的方式,分群求众数
• 更精确作法是利用模型求出较可能的值来填入
  • 把填遗缺值的问题当作是分类的问题

(2)数值字段

• 填入一个通用的常数
  • 如填入0(但需Check其意义)
• 填入该字段的整体平均值(Mean)
  • 不会对统计结果造成太大的影响
  • 缺点是不够客观
• 可用分群的方式,分群求平均值
  • 更精确作法是利用模型求出较可能的值来填入
  • 把填遗缺值的问题当作是预测的问题

 

以上是关于数据清洗主要工作的主要内容,如果未能解决你的问题,请参考以下文章

文摘:使用Python进行数据清洗

数据分析中如何清洗数据?

关于TiTanic存活预测实战(数据清洗)

spark数据清洗练习

机器学习-数据清洗

机器学习-数据清洗