5.2 缺失值处理

缺失值是指数据集中某个或某些属性的值是不完整的,产生的原因主要有人为原因和机械原因两种,其中机械原因是由于机器故障造成数据未能收集或存储失败,人为原因是由主观失误或有意隐瞒造成的数据缺失。

缺失值清洗策略

制定合理的缺失值数据处理策略,不仅可以提升缺失值数据处理的效率,还可以使处理后数据的可靠性得到保证,提高最终分析结果的准确性。缺失值的处理方法很多,这里建议大家在清洗缺失值时,首先计算数据源字段缺失值比例,之后根据数据缺失率和重要性,指定不同的策略。下面,通过一张图来描述缺失数据的缺失率以及重要性划分的四种情况,具体如图所示。

根据缺失值的范围制定对应的策略,通常情况下采用的策略如表所示。

缺失值范围

对应策略

重要性高、缺失率高的数据

(1) 尝试从其它渠道获取数据进行补全

(2) 通过对其它字段的数据进行分析、计算等方式获取合理值进行补全

(3) 去除字段但要在结果中进行标注

重要性高、缺失率低的数据

(1) 通过对字段自身的数据进行分析、计算等方式获取合理值进行补全

(2) 通过自身的经验与业务知识对缺失值数据进行人为补全

重要性低、缺失率高的数据

直接去除该字段

重要性低、缺失率低的数据

可以不去处理或者进行简单的填充

 去除缺失值

数据缺失分为两种:一种是行记录的缺失,这种情况又称数据记录丢失;另一种是数据列值的缺失,即由于各种原因导致的数据记录中某些列的值空缺。 去除缺失值数据通常分为两种情况:一种是删除存在遗漏信息属性值的对象的列,另一种是删除存在遗漏信息属性值对象的记录,从而得到一个完备的信息表。缺失值数据在缺失值所在的列对最终分析结果无重要意义或存在缺失值的记录与初始数据集的数据量相比非常小的情况下非常有效。 在数据量小的情况下,通过人为观察就可以轻易从数据集中找到存在缺失值的记录;若是数据量比较大,那么通过人为观察的方式查找存在缺失值的记录是非常耗时的,因此数据集较大的情况下可利用统计学方法筛选出包含缺失值的对象,然后通过计算得出每个字段的缺失率,去除缺失率高的字段,最后再对数据进行过滤,将有缺失值的记录过滤掉,这样就可以避免数据大量的丢失。

案例介绍

通过Kettle工具,去除原始数据集revenue.txt中的缺失值。

现在有一份就业人员的收入数据文件revenue.txt,由于某种原因,在数据采集的过程中产生了大量的缺失值数据,内容如图所示。

通过使用Kettle工具,创建一个转换delete_missing_value,并添加“文本文件输入”控件、“字段选择”控件、“过滤记录”控件、“Excel输出”控件、“空操作(什么也不做)”控件以及Hop跳连接线。

单击【浏览】按钮,选择要去除缺失值的文件revenue.txt;单击【增加】按钮,将要去除缺失值的文件revenue.txt添加到“文本文件输入”控件中。

单击“内容”选项卡;在清除分隔符处的默认分隔符“;”,单击【Insert TAB】按钮,在分隔符处插入一个制表符;取消勾选“头部”复选框,若不取消,在进行数据抽取操作时会排除文件第一行的数据。

单击“字段”选项卡;根据文件revenue.txt的内容添加对应的字段名称,并指定数据类型。

 

 在“选择和修改”选项卡的“字段”处手动添加文本文件输入控件输出的所有数据字段,也可以单击【获取选择的字段】按钮,Kettle工具自动检索并添加文本文件输入控件输出的所有数据字段。

在“移除”选项卡处添加要移除的字段名称,这里移除的是Sex字段。 

 双击“过滤记录”控件,进入“过滤记录”界面。

连续单击两次【确定】按钮,查看整体设置的过滤条件。

在“发送true数据给步骤:”处的下拉框中选择“空操作”,将包含缺失值的行数据放在空操作控件中;在“发送false数据给步骤:”处的下拉框中选择“Excel输出”,将没有缺失值的行数据输出到Excel文件中。

 

 运行创建的delete_missing_value转换

查看“Excel输出”控件输出的文件file.xls是否还含有缺失值数据,文件file.xls的内容如图所示。

至此,我们完成了缺失值处理

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kiritobryant

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值