数据的清洗与检验

1.通过kettle工具,对文件merge.csv进行完全去重。

具体步骤如下所示:

(1)数据准备。

(2)打开Kettle工具,创建转换

     打开Kettle工具,创建一个新的转换(可以默认转换1),添加“CSV文件输入”控件,“唯一行(哈希值)”控件,具体如图1.1所示。

                                                                     图1.1 

(3)配置“CSV文件输入”控件

    双击“CSV文件输入”控件,进入此控件界面中,首先单击“浏览”按钮,选择要完全去重处理的CSV文件merge.csv;接着单击“获取字段"按钮,Kettle会自动检索CSV文件;然后单击”预览“按钮,查看CSV文件merge.csv的数据是否加载到CSV文件输入流中;最后单击”关闭“-”确定“按钮,完成”CSV文件输入“的配置,具体如图1.2和图1.3所示。

                                                                              图1.2 

                                                                           图1.3 

(4)配置“唯一行(哈希值)”控件

     双击“唯一行(哈希值)”控件,进入此控件界面中,首先在“用来比较的字段”处添加要去重的字段;然后单击“确定”按钮,完成“唯一行(哈希值)"控件的配置,具体如图1.4所示。

                                                                            图1.4 

(5)运行转换

    查看是否消除CSV文件merge.csv中完全重复的数据(可以选中“唯一行(哈希值)”控件,单击执行结果窗口中的Preview data选项卡查看),具体如图1.5和图1.6所示。

                                                                          图1.5

                                                                      图1.6 

从图1.6可以看出此步骤实现了CSV文件merge.csv中数据的完全去重,消除了重复的数据。

2.通过kettle工具,对文件people_servey.txt中的缺失值进行填充。

具体步骤如下所示。

(1)打开Kettle工具,创建转换

    使用Kettle工具创建转换fill_missing_value,添加“文本文件输入”控件、“过滤记录”控件、空操作(什么也不做)”控件、“替换NULL值”控件、“合并记录”控件、“字段选择”控件,具体如图2.1所示。

                                                                      图2.1 

(2)配置“文本文件输入”控件

     双击“文本文件输入”控件,进入此控件界面,首先单击“浏览”按钮,选择要填充缺失值的文件people_survey.txt;接着单击“增加”按钮,将要填充缺失值的文件添加到“文本文件输入”控件中;然后单击“内容”选项卡,清除分隔符处的默认分隔符“;”,单击Insert TAB按钮,在分隔符处插入一个制表符,取消勾选“头部”复选框;然后单击“字段”选项卡,根据文件people_survey.txt的内容添加对应的字段名称,并指定数据类型,注意添加的字段都应选择“不去掉空格”;最后单击“预览记录”按钮,查看数据是否抽取到文本文件输入流中,单击“关闭”-“确定”按钮,完成“文本文件输入”控件配置,具体如图2.2和图2.3所示。

                                                                           图2.2 

                                                                           图2.3

(3)配置“过滤记录”控件

     双击“过滤记录”控件,进入此控件界面,首先在“条件”处设置过滤的条件;然后在“发送true数据给步骤”下拉列表中选择“空操作(什么也不做)”,将workclass字段值为Private的数据放在“空操作”控件中,在“发送false数据步骤”后的下拉列表中选择“空操作(什么也不做)2”,将workclass字段值不为Private的数据放在空操作(什么也不做)2控件中;最后单击“确定”按钮,完成“过滤记录”控件配置,具体如图2.4所示。

                                                                             图2.4 

(4)配置“替换NULL值”控件

     双击“替换NULL值”控件,进入此控件界面,首先勾选“选择字段”复选框,并在“字段”框添加字段hours_per_week,值替换为44;然后单击“确定”按钮,完成“替换NULL值”控件的配置,具体如图2.5所示。

                                                                       图2.5 

(5)配置“合并记录”控件

     双击“合并记录”控件,进入此控件界面,首先在“旧数据源”下拉列表中选择“替换NULL值”;然后在“新数据源”后的下拉列表中选择“空操作(什么也不做)2,在“匹配的关键字”部分添加关键字,即userid;最后单击“确定”按钮,完成“合并记录”控件配置,具体如图2.6所示。

                                                                            图2.6 

(6)配置“替换NULL值2”控件

     双击“替换NULL值2”控件,进入此控件界面,首先勾选“选择字段”复选框,并在“字段”框添加字段workclass,值替换为Private;然后单击“确定”按钮,完成“替换NULL值2”控件的配置,具体如图2.7所示。

                                                                            图2.7 

  (7)配置“字段选择”控件

     双击“字段选择”控件,进入此控件界面,首先在“移除”选项卡界面中添加要移除的字段名称,这里要移除的字段是flagfield;然后单击“确定”按钮,完成“字段选择”控件的配置,具体如图2.8所示。

                                                                       图2.8 

(8)运行转换

    查看是否填充了文件people_survey.txt中的缺失值(可以选中“字段选择”控件,单击执行结果窗口中的Preview data选项卡查看),具体如图2.9所示。

 

                                                                            图2.9

从图2.9可以看出文件people_survey.txt中不存在缺失值数据了,说明此步骤实现了缺失值的填充。

    

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值