案例介绍:

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

案例实现:

数据准备

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

怎么替换kettle连接mysql驱动_数据

1.打开Kettle工具,创建转换

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

怎么替换kettle连接mysql驱动_字段_02

2.配置文本文件输入控件

双击“文本文件输入”控件,进入“文本文件输入”配置界面。

怎么替换kettle连接mysql驱动_数据_03

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

怎么替换kettle连接mysql驱动_数据_04

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

怎么替换kettle连接mysql驱动_怎么替换kettle连接mysql驱动_05

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

怎么替换kettle连接mysql驱动_数据_06

单击【预览记录】按钮,查看文件revenue.txt中的数据是否成功抽取到文本文件输入流中,具体如图所示。

怎么替换kettle连接mysql驱动_microsoft_07

3.配置字段选择控件

双击“字段选择”控件,进入“选择/改名值”界面。

怎么替换kettle连接mysql驱动_怎么替换kettle连接mysql驱动_08

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

怎么替换kettle连接mysql驱动_控件_09

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

怎么替换kettle连接mysql驱动_控件_10

4.配置过滤记录控件

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

怎么替换kettle连接mysql驱动_控件_11

在“条件”处设置过滤的条件,过滤掉有缺失值的数据字段(这里是过滤Name、Pay和Area字段中的缺失值);单击左边“<field>”框,弹出字段对话框,选择要过滤的字段Name;单击 “=”框,弹出函数对话框,选择过滤条件(这里选择IS NULL)。字段Name的过滤设置如图所示。

怎么替换kettle连接mysql驱动_控件_12

单击符号“+”增加过滤条件;单击“AND”,弹出操作符对话框,选择操作符(这里选择的是OR)。

怎么替换kettle连接mysql驱动_控件_13

怎么替换kettle连接mysql驱动_microsoft_14

单击“增加条件”图中的“null = [ ]”,添加过滤字段;单击左边“<field>”框,弹出字段对话框,选择要过滤的字段Pay;单击“=”框,弹出函数对话框,选择过滤条件(这里选择IS NULL)。字段Pay的过滤设置,如图所示。

怎么替换kettle连接mysql驱动_数据_15

单击“字段Pay的过滤设置”图中的符号“+”增加过滤条件;单击“AND”,弹出操作符对话框,选择操作符(这里选择OR)。

怎么替换kettle连接mysql驱动_字段_16

怎么替换kettle连接mysql驱动_数据_17

 

单击“增加条件”图中的“null = [ ]”,添加过滤字段;单击左边“<field>”框,弹出字段对话框,选择要过滤的字段Area;单击“=”框,弹出函数对话框,选择过滤条件(这里选择IS NULL);字段Area的过滤设置,具体如图所示。

怎么替换kettle连接mysql驱动_microsoft_18

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

怎么替换kettle连接mysql驱动_数据_19

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

 

怎么替换kettle连接mysql驱动_microsoft_20

5.配置Excel输出控件

双击“Excel输出”控件,进入“Excel输出”配置界面。

怎么替换kettle连接mysql驱动_数据_21

单击【浏览】按钮,选择要输出的文件路径。

怎么替换kettle连接mysql驱动_microsoft_22

6.运行转换delete_missing_value

单击转换工作区顶部的运行按钮,运行创建的delete_missing_value转换。

怎么替换kettle连接mysql驱动_字段_23

7.查看文件file.xls

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

怎么替换kettle连接mysql驱动_microsoft_24