数据清洗第六章—课后操作题
目錄
一、對文本文件personnel_data.txt中的數據進行數據粒度的轉換,即將文本文件personnel_data.txt中字段為household_register的數據統一成省份,并輸出到文本文件personnle_data_new.txt中。
1、打開Kettle工具,新建轉換
2、配置文本文件輸入控件
3、配置字段選擇控件
4、配置排序記錄控件
?5、?配置表輸入控件
?6 、配置排序記錄2控件
7、配置記錄集連接控件
8、配置字段選擇2控件
9、配置排序記錄3控件
?10、配置表輸入2控件
??11、配置排序記錄4控件
12、配置記錄集連接2控件
13、配置字段選擇3控件?
14、配置表輸出控件?
15、打開Kettle工具,新建轉換
16、配置表輸入控件?
17、配置字段選擇控件
18、配置排序記錄控件
19、配置文本文件輸入控件
20、配置字段選擇2控件?
21、配置排序記錄2控件
?22、配置記錄集連接控件
23、配置字段選擇3控件
24、配置文本文件輸出控件?
25、打開Kettle工具,新建作業
26、配置轉換控件
27、配置轉換2控件
28、運行作業generalization
29、查看文本文件personnel_data_new.txt中的數據
?二、對文本文件personnel_data_new.txt中字段為salary的數據進行商務規則計算,即計算每個人的月薪(以22天工作日計算),最終輸出到文本文件personnel_data_monthly_salary.txt中。
1、打開Kettle工具,新建轉換
2、配置文本文件輸入控件
??3、配置增加常量控件
4、配置計算器控件
?5、配置文本文件輸出控件
6、運行轉換monthly_salary
題目:現有一個文本文件personnel_data.txt,包含字段id、name、id_number、household_register和salary。通過kettle工具,實現以下功能:
一、對文本文件personnel_data.txt中的數據進行數據粒度的轉換,即將文本文件personnel_data.txt中字段為household_register的數據統一成省份,并輸出到文本文件personnle_data_new.txt中。
1、打開Kettle工具,新建轉換
使用Kettle工具,創建一個轉換generalization,并添加文本文件輸入控件、表輸入控件、字段選擇控件、排序記錄控件、記錄集連接控件、表輸出控件以及Hop跳連接線
2、配置文本文件輸入控件
雙擊“文本文件輸入”控件,進入“文本文件輸入”界面,單擊“瀏覽”按鈕,選擇personnel_data.txt文件;單擊“增加”按鈕,將personnel_data.txt文件添加到generalization轉換中。
單擊“內容”選項卡,在分隔符處清除默認分隔符“;”,單擊“Insert TAB”按鈕,在分隔符處插入一個制表符;取消勾選“頭部”復選框。
?單擊“字段”選項卡,根據personnel_data.txt文件的內容添加對應的字段名稱,并指定數據類型。
3、配置字段選擇控件
雙擊“字段選擇”控件,進入“選擇/改名值”界面,在“選擇和修改”選項卡處添加字段名稱:
4、配置排序記錄控件
雙擊“排序記錄”控件,進入“排序記錄”界面,并在“字段”框中添加字段household_register,對其進行排序:
?5、?配置表輸入控件
6 、配置排序記錄2控件
雙擊“排序記錄 2”控件,進入“排序記錄”界面,在“字段”框中添加字段city,并對其進行排序:
?7、配置記錄集連接控件
雙擊“記錄集連接”控件,進入“合并排序”界面,在“第一個步驟”處的下拉框中選擇“排序記錄”,“第二個步驟”處的下拉框中選擇“排序記錄2”;在“第一個步驟的連接字段”和“第二個步驟的連接字段”處添加連接字段,這里添加的連接字段是household_register和city;在“連接類型”處的下拉框選擇連接類型,這里選擇的LEFT OUTER,即左外連接:
?8、配置字段選擇2控件
雙擊“字段選擇2”控件,進入“選擇/改名值”界面,在“選擇和修改”選項卡處添加字段名稱,這里添加的是記錄集連接流中的字段household_register和pid:
9、配置排序記錄3控件
雙擊“排序記錄 3”控件,進入“排序記錄”界面,在“字段”框中添加字段pid,并對其進行排序:
?10、配置表輸入2控件
雙擊“表輸入2”控件,單擊“新建”按鈕,配置數據庫連接,配置完成后單擊“確認”按鈕;在SQL框中編寫SQL語句,用于查詢provincial數據表中字段Provincial和pid的數據,用于與household_register字段進行合并連接:
?11、配置排序記錄4控件
雙擊“排序記錄 4”控件,進入“排序記錄”界面,在“字段”框中添加字段pid,并對其進行排序:
12、配置記錄集連接2控件
雙擊“記錄集連接2”控件,進入“合并排序”界面,在“第一個步驟”處的下拉框中選擇“排序記錄3”,“第二個步驟”處的下拉框中選擇“排序記錄4”;在“第一個步驟的連接字段”和“第二個步驟的連接字段”處添加連接字段,這里添加的連接字段是pid;在“連接類型”處的下拉框選擇連接類型,這里選擇的LEFT OUTER,即左外連接:
13、配置字段選擇3控件?
雙擊“字段選擇3”控件,進入“選擇/改名值”界面,在“選擇和修改”選項卡處添加字段名稱,這里添加的是記錄集連接2流中的字段household_register和Provincial:
14、配置表輸出控件?
雙擊“表輸出”控件,單擊“新建”按鈕,配置數據庫連接,配置完成后單擊“確認”按鈕;單擊目標表右側的【瀏覽】按鈕,選擇輸出的目標表,即臨時數據表personnel;勾選“指定數據庫字段”的復選框,單擊“輸入字段映射”按鈕,彈出“映射匹配”對話框,依次選中“源字段”選項框的字段和“目標字段”選項框的字段,再單擊“Add”按鈕,將一對映射字段添加至“映射”選項框中:
15、打開Kettle工具,新建轉換
?
16、配置表輸入控件?
雙擊“表輸入”控件,進入“表輸入”界面,單擊“新建”按鈕,配置數據庫連接,配置完成后單擊“確認”按鈕;在SQL框中編寫SQL語句,用于查詢數據表personnel中的數據:
17、配置字段選擇控件
雙擊“字段選擇”控件,進入“選擇/改名值”界面,在“選擇和修改”選項卡處添加字段名稱:
18、配置排序記錄控件
雙擊“排序記錄”控件,進入“排序記錄”界面,并在“字段”框中添加字段id,對其進行排序:
19、配置文本文件輸入控件
(1)雙擊“文本文件輸入”控件,進入“文本文件輸入”界面,單擊“瀏覽”按鈕,選擇要抽取personnel_data.txt文件;單擊“增加”按鈕,將要抽取的personnel_data.txt文件添加到generalization_merge轉換中;
(2)單擊“內容”選項卡,在分隔符處清除默認分隔符“;”,單擊“Insert TAB”按鈕,在分隔符處插入一個制表符,取消勾選“頭部”復選框;
(3)單擊“字段”選項卡,根據文本文件personnel_data.txt的內容添加對應的字段名稱,并指定數據類型
(4)單擊“字段”選項卡,根據文本文件personnel_data.txt的內容添加對應的字段名稱,并指定數據類型:
20、配置字段選擇2控件?
?雙擊“字段選擇2”控件,進入“選擇/改名值”界面,在“選擇和修改”選項卡處添加字段名稱:
21、配置排序記錄2控件
雙擊“排序記錄2”控件,進入“排序記錄”界面,并在“字段”框中添加字段id,對其進行排序:
?
?22、配置記錄集連接控件
?雙擊“記錄集連接”控件,進入“合并排序”界面,在“第一個步驟”處的下拉框中選擇“排序記錄”,“第二個步驟”處的下拉框中選擇“排序記錄2”;在“第一個步驟的連接字段”和“第二個步驟的連接字段”處添加連接字段,這里添加的連接字段是id;在“連接類型”處的下拉框選擇連接類型,這里選擇的LEFT OUTER,即左外連接:
23、配置字段選擇3控件
雙擊“字段選擇3”控件,進入“字段選擇”界面,在“選擇和修改”選項卡處添加字段名稱,并將字段household_register_new改為household_register:
?
24、配置文本文件輸出控件?
?(1)雙擊“文本文件輸出”控件,進入“文本文件輸出”界面,單擊“文件名稱”右側的“瀏覽”按鈕,選擇輸出文件,即文本文件personnel_data_new:
(2)單擊“內容”選項卡,進入“內容”界面,清除分隔符處的默認分隔符,單擊“插入Tab”按鈕,插入Tab分隔符。并在編碼處的下拉框選擇“UTF-8”編碼:
?(3)單擊“字段”選項卡,進入“字段”界面,添加要輸出的字段:
25、打開Kettle工具,新建作業
?
26、配置轉換控件
雙擊圖的“轉換”控件,進入“轉換”界面,選擇添加轉換generalization:
27、配置轉換2控件
雙擊“轉換2”控件,進入“轉換”界面,選擇添加轉換generalization_merge:
?28、運行作業generalization
單擊作業工作區頂部的按鈕,運行作業generalization,實現將文本文件personnel_data.txt中字段為household_register的數據統一成省份(直轄市),并輸出到文本文件personnel_data_new.txt中:
29、查看文本文件personnel_data_new.txt中的數據
通過文本編輯器工具,查看文本文件personnel_data_new.txt中的數據
?二、對文本文件personnel_data_new.txt中字段為salary的數據進行商務規則計算,即計算每個人的月薪(以22天工作日計算),最終輸出到文本文件personnel_data_monthly_salary.txt中。
1、打開Kettle工具,新建轉換
2、配置文本文件輸入控件
(1)雙擊“文本文件輸入”控件,進入“文本文件輸入”界面,單擊"瀏覽"按鈕,選擇要抽取的personnel_data_new.txt文件;單擊"增加"按鈕,將要抽取的personnel_data_new.txt文件添加到轉換monthly_salary中:
(2)單擊“內容”選項卡,在分隔符處清除默認分隔符“;”,單擊“Insert TAB”按鈕,在分隔符處插入一個制表符:
(3)單擊“字段”選項卡,根據personnel_data_new.txt文件的內容添加對應的字段名稱,并指定數據類型:
?3、配置增加常量控件
雙擊“增加常量”控件,進入“增加常量”界面,在字段框中添加一個字段days,并給定一個值22:
?
4、配置計算器控件
?雙擊“計算器”控件,進入“計算器”界面,在字段框中添加一個字段monthly_salary,用于存儲月薪,該字段是由字段days和salary進行相乘所得:
5、配置文本文件輸出控件
(1)雙擊“文本文件輸出”控件,進入“文本文件輸出”界面,單擊“文件名稱”右側的【瀏覽】按鈕,選擇輸出文件,即文本文件personnel_data_monthly_salary;
?
(2)單擊“內容”選項卡,進入“內容”界面,清除分隔符處的默認分隔符,單擊“插入Tab”按鈕,插入Tab分隔符,并在編碼處的下拉框選擇“UTF-8”編碼;?
?
(3)單擊“字段”選項卡,進入“字段”界面,添加要輸出的字段:
?
6、運行轉換monthly_salary
如下圖所示,運行成功:
?
總結
以上是生活随笔為你收集整理的数据清洗第六章—课后操作题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【声明】本人博客已经迁移到博客园,欢迎访
- 下一篇: 计算机实训实验报告,审计实务实验报告总结