大数据应用人才培养系列教材 数据清洗 刘 鹏 张 燕 总主编 李法平 主编 陈潇潇 副主编.

Slides:



Advertisements
Similar presentations
实用农业科技写作 王鹏文. 第一章 导论 第一节 农业科技写作概述 一 、 农业科技写作概念和分类: 科技文献类、科技应用类、 科技普及类、科技新闻类 二、 农业科技写作的意义和重要性: 科技工作的重要组成部分、科学研究的手段、 科技成果的反映和标志、科技交流的工具 三、 农业科技写作的特点 : 功利性与及时性、科学性与先进性、读者的专门性与狭隘性、
Advertisements

新课程引领 实践中前行 —— 蓟县初中信息技术三年课改总结. 自从 2005 年秋季我市进入基础教育新一 轮课程改革实验以来,在市教研室的正 确领导下,我县初中信息技术课改工作 稳步推进。三年来,取得了一些成果, 也有不少体会。现将三年来的信息技术 课改工作总结如下。
河南省基础教育资源网 邓伟鹏 二〇一二年七月 内容大纲 1. 培训平台的目的 2. 培训平台介绍 3. 培训平台功能 4. 培训工作建立流程 5. 培训门户 6. 在线学习 6.1 课程学习 6.2 在线考试 7. 培训考试管理 7.1. 课程管理 7.2 必修学习班建立 7.3 在线考试管理 7.4.
桐乡市地方税务局 2013 年度社会保险费汇算清缴有 关政策及事项说明. 一、政策规定 根据《中华人民共和国社会保险法》、《桐乡市社会保险费征缴管 理办法》(市政府令第 42 号)、《 关于完善社会保险费征缴管理有关问 题的通知》(桐政办发 [2012]152 号)及《关于完善社会保险费征缴管理.
幾米 作業 1 飛上天空 我想飛上天空 遨遊在無際的天空 美麗的天空 漂亮的天空 這終究只是夢…… (李高仰)
NO.005 職涯 報 實習 徵才 攻讀 國立嘉義大學 學生事務處學生職涯發展中心.
國中教育會考 十二年國教—免試入學 及 意見整理.
学习全国“两会”精神 常州工学院  理学院党总支 2014年3月.
乘势而上再谱发展新篇章 -2012全国两会精神解读
开启新征程 点燃中国梦 开启新征程 点燃中国梦 ——学习、领会2013年全国“两会”精神.
課程地圖 (104年入學-日間部) 校通識核心 專業課程 必修與選修 與管理模組 網路技術 App設計與應用模組 學院通識核心 學院專業核心
C语言程序设计 李伟光.
严格标准 规范程序 认真做好党员发展工作.
薪資申報系統操作說明.
商学院 旅游管理专业介绍.
教學經驗分享 吳毅成 國立交通大學資訊工程系 2012年4月.
 历史以人类的活动为特定的对象,它思接万载,视通万里,千恣百态,令人销魂,因此它比其他学科更能激发人们的想像力。    
《数学》(华师大.八年级 下册) 第二十一章数据的整理与初步处理 扇形统计图的制作.
各位弟兄姐妹,主內平安! 請將手機關靜音,帶著敬虔的心來到上帝的面前!
怎样报销劳务性费用? ——暨薪酬发放申报系统介绍 怎样报销劳务性费用? ——暨薪酬发放申报系统介绍 (学院、部门适用)
第一节 呼吸道对空气的处理.
十面“霾”伏 湖南长沙民政职业技术学院“思政”第九组 组员:李亮亮 许静 赵凯丽 何敏 张艳欣 付幻菱 陈京萍 王诗雨.
99年成語200題庫(21-40).
104學年度臺南區免試入學作業國中端說明會 臺南市政府教育局 104學年度臺南區高級中等學校免試入學委員會 日期:104年1月9日(五)
如何对付脏空气.
『臺北市營建剩餘資源管理系統』 教育訓練說明 臺北市政府 報告人 王宏正
4.3 处理数据 宝鸡理工学校计算机组 李小保.
电子表格工作簿的操作 和数据的处理 感谢各位领导和老师的莅临与指导! 授课人:幸福人寿邵阳中心支公司 银保部王晚英.
“三项制度+一个平台”构建 省级高校教学质量监控体系
瓯海职专财经专业组简介.
国有资产清查 数据填报操作规范 2016年3月25日.
第 11 章 網際網路與資料庫系統.
教師執行計畫案聘任助理說明會 (勞務型、學習型申請方式說明)
水腫的原因 徐淑娟護理師 PM.
中国未成年人法制安全课程 雾霾哪里来? 初中段 第七讲.
上海文会会计师事务所有限公司 中国注册会计师 童幸义
关于成绩的数理统计的探讨 望您多多指教!多谢!!.
仓储企业岗位人员招聘 第一组 组员 :陈娇娇 祝婷婷 丁元莉 袁珮 王慧.
Kettle 培训 BI 数据部 Jim 2011年03月27日.
转正述职报告 乐恩公司 史航
人口与计划生育 统计分析 昌吉市计划生育委员会 二○○六年三月.
第四章 社会 [本章内容与要求]     本章主要介绍社会、社会运行的条件与机制、社会结构、社会关系,社会要素中的人口因素、环境因素。要求对社会发展、社会运行有基本的认识和初步的思考。
何俊賢教學資料.
2014年深圳市学生人身意外伤害保险投保工作介绍 中国人民财产保险股份有限公司深圳市分公司
主编:钟元生 赵圣鲁.
97學年度 導師輔導知能研習營成果.
办学条件核查 评估秘书组 电力职业技术学院 山西机电职业技术学院 2014年7月9日.
科 展 說 明.
地方科技基础条件资源调查管理信息系统 (标准化器)操作培训 2017年7月 呼和浩特
怎样报销劳务性费用? ——暨薪酬发放申报系统介绍 怎样报销劳务性费用? ——暨薪酬发放申报系统介绍 (项目经费适用)
成本会计学.
聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝. 聚合型第一種:隱沒帶、島弧 例子:臺灣東方的琉球海溝、南美洲智利海溝.
舊生升級編班與新生管理操作說明 全誼資訊股份有限公司 中華民國106年06月05日.
项目4.4: 工作表格式化 项目描述 能力目标 与WORD一样也对EXCEL的数据单元格设置边框和底纹,使工作表更加美观漂亮;若使用条件格式还能将符合条件的单元格数据指定格式,以便更好地比较和分析数据;设置页面布局、打印范围、打印参数将工作表打印出来。 掌握对单元格设置边框和底纹的基本操作与应用,
第4章 Excel电子表格 Excel操作必须掌握的知识点: 掌握建立、打开、保存和编辑文档的基本操作 ;
大数据应用人才培养系列教材 R 语言 刘 鹏 张 燕 总主编 程显毅 主编 刘颖 朱倩 副主编.
方格紙上畫正方形.
大数据应用人才培养系列教材 Python语言 刘 鹏 张 燕 总主编 李肖俊 主编 刘 河 钟 涛 副主编.
新课程理念下如何进行课堂教学 刘志超 2014年2月25日.
大数据应用人才培养系列教材 Python语言 刘 鹏 张 燕 总主编 李肖俊 主编 刘 河 钟 涛 副主编.
高级大数据人才培养丛书之一,大数据挖掘技术与应用
大数据应用人才培养系列教材 数据挖掘基础 刘 鹏 张 燕 总主编 陶建辉 主编 姜才康 副主编.
数据挖掘 DATA MINING 刘 鹏 张 燕 总主编 王朝霞 主编 施建强 杨慧娟 陈建彪 副主编
第6课 我是共和国的公民.
大数据应用人才培养系列教材 Python语言 刘 鹏 张 燕 总主编 李肖俊 主编 刘 河 钟 涛 副主编.
大数据应用人才培养系列教材 数据清洗 刘 鹏 张 燕 总主编 李法平 主编 陈潇潇 副主编.
大数据应用人才培养系列教材 R 语言 刘 鹏 张 燕 总主编 程显毅 主编 刘颖 朱倩 副主编.
高级大数据人才培养丛书之一,大数据挖掘技术与应用
大数据应用人才培养系列教材 数据挖掘基础 刘 鹏 张 燕 总主编 陶建辉 主编 姜才康 副主编.
6 分析資料-以統計測量數呈現.
Presentation transcript:

大数据应用人才培养系列教材 数据清洗 刘 鹏 张 燕 总主编 李法平 主编 陈潇潇 副主编

大数据应用人才培养系列教材 第八章 清洗RDBMS数据实例 8.1 准备工作 8.2 数据库数据清洗 8.3 数据脱敏处理 习题

本次使用的数据集来源于某校排课数据文件,文件类型为xls,数据集特点如下: 8.1 准备工作 第八章 清洗RDBMS数据实例 1.准备待清洗的数据集 本次使用的数据集来源于某校排课数据文件,文件类型为xls,数据集特点如下: 1 数据集一共包含30个字段 2 某些字段内容存在缺失值,某些字段内容出现格式错误或逻辑错误 2 教师信息表作为辅助表

8.1准备工作 第八章 清洗RDBMS数据实例 2.搭建操作环境 环境的搭建包括安装MySQL数据库、安装Navicat软件、安装ETL工具、用ETL工具连接数据库。本章ETL工具选择Pentaho Data Integration 6.1(也称作Kettle)。在运行Kettle前,需进行Java环境的配置。Java环境变量的配置如图8-1、图8-2所示。 存储 存储成本下降 图8-1 Java环境变量CLASSPATH与JAVA_HOME 图8-2 Java环境变量Path

8.1准备工作 2.搭建操作环境 kettle连接数据库的操作主要包括以下几个步骤: 下载连接包; 第八章 清洗RDBMS数据实例 2.搭建操作环境 kettle连接数据库的操作主要包括以下几个步骤: 下载连接包; 打开Spoon.bat文件,进入Spoon界面; 双击Navicat应用程序,打开MySQL数据库; 双击“转换1”下的DB连接,弹出数据库连接界面。连接类型选择MySQL,连接方式选择Native(JDBC)。根据实际情况填写连接名称、主机名称、数据库名称、端口号、用户名、密码,并单击“测试”按钮,若连接成功,则出现如图8-4所示的提示界面。。 存储 存储成本下降 图8-4 Kettle连接MySQL数据库成功

8.1准备工作 01 02 3.数据导入MySQL 下面介绍用Kettle工具将排课数据导入MySQL的过程(部分重要过程): 第八章 清洗RDBMS数据实例 3.数据导入MySQL 下面介绍用Kettle工具将排课数据导入MySQL的过程(部分重要过程): Kettle获取Excel表中的字段 01 步骤1:在“Excel输入”中,选择“工作表”选项卡,单击“获取工作表名称”按钮,选择需要导入数据的sheet表,如图8-8; 步骤2:选择“字段”选项卡,单击“获取来自头部数据的字段”按钮,得到获取字段的结果,再单击“确定”按钮,如图8-9所示; 存储 存储成本下降 将Excel表中的数据输出到MySQL表中 02 步骤1:双击“表输出”图标,打开“表输出”操作界面,设置MySQL与输出的连接; 步骤2:打开Navicat软件,在test数据库下建立名为“course_info”的表,并定义表字段名称和类型;

8.1准备工作 3.数据导入MySQL 步骤3:将Excel表中的字段与数据库表中的目标字段进行匹配,单击“确定”按钮; 第八章 清洗RDBMS数据实例 3.数据导入MySQL 步骤3:将Excel表中的字段与数据库表中的目标字段进行匹配,单击“确定”按钮; 步骤4:单击运行“转换”按钮,完成转换,从而实现数据的导入操作. 存储 存储成本下降 图8-8 添加工作表 图8-9 输入的Excel中字段的配置

大数据应用人才培养系列教材 第八章 清洗RDBMS数据实例 8.1 准备工作 8.2 数据库数据清洗 8.3 数据脱敏处理 习题

01 8.2 数据库数据清洗 缺失值清洗 缺失值清洗策略如下表所示: 第八章 清洗RDBMS数据实例 缺失值清洗 缺失值清洗策略如下表所示: 01 重 要 性 缺 失 率 策 略 高 1. 尝试从其他渠道取数补全2. 使用其他字段通过计算获取 低 通过经验或业务知识统计 不做处理或者简单填充 去除字段,并在结果中标明 填充实例前提:分析导入数据库test的表course_info,发现professional(职称)字段中内容缺失率较高,达43%。结合实际情况,发现此字段的重要性较高,所以采取从其他渠道取数补全的清洗策略。本节将结合另一张教师信息表teacher_info中完整的professional字段信息,利用Kettle对course_info表中professional字段的缺失值进行填充。

8.2 数据库数据清洗 方法1 运行SQL脚本进行填充 第八章 清洗RDBMS数据实例 第一步 第二步 第三步 第四步 使用Kettle将teacher_info表导入test数据库 新建连接,连接数据库 编辑SQL脚本,在SQL脚本框中输入待执行的SQL语句 单击“运行转换”按钮,即可执行SQL语句

8.2 数据库数据清洗 方法2 运用控件进行填充 第八章 清洗RDBMS数据实例 第一步 第二步 建立表输入,输入内容为待处理内容 第三步 第四步 建立表输入,输入内容为待处理内容 建立“表输入”“过滤记录”“插入/更新”之间的连接,以便完成操作目标 设置“过滤记录”。只有当待填充表course_info中的professional字段值为空或者为空字符串时才实现填充功能,因此在过滤记录中需注明过滤条件 设置“插入/更新”选项,实现更改内容与待更改字段的映射,之后再点击运行转换

02 8.2 数据库数据清洗 格式内容清洗 造成格式内容错误的原因大致可分为以下两类: 1)不同的数据源 第八章 清洗RDBMS数据实例 格式内容清洗 造成格式内容错误的原因大致可分为以下两类: 1)不同的数据源 不同数据源的数据标准不一致,即使导入过程正确,也使得最后数据显示格式不一致。 2)人工错误 人工导入过程出现错误或者数据检验工作不充分,导致导入的数据存在不符合常规的内容。 02 格式内容清洗前提:何为错误类型1,错误类型2? 在course_info表中,考核方式字段assess_method内容混入了空格,如assess_method='考 查',将这种情况定义为“格式错误类型1”。另外,在tname(教师姓名)字段下出现了tname='20168'的情况,而经过分析发现部分tname的值等于tcode(教师编号)的值,将这种情形定义为“格式错误类型2”。

8.2 数据库数据清洗 1) 对“格式错误类型1”进行清洗 方法1 运行SQL脚本 新建连接,连接数据库 编辑SQL脚本 第八章 清洗RDBMS数据实例 1) 对“格式错误类型1”进行清洗 方法1 运行SQL脚本 第一步 第二步 第三步 新建连接,连接数据库 编辑SQL脚本 单击“运行转换”按钮,即可执行SQL语句

8.2 数据库数据清洗 1) 对“格式错误类型1”进行清洗 方法2 第一步 第二步 第三步 第四步 运用控件对“格式错误类型1”进行清洗 第八章 清洗RDBMS数据实例 1) 对“格式错误类型1”进行清洗 方法2 运用控件对“格式错误类型1”进行清洗 第一步 第二步 第三步 第四步 建立表输入,并建立数据库连接,将查询结果作为本次转换的输入流 建立“表输入”“字符串操作”“插入/更新”之间的连接 设置“字符串操作”内容,注意在Remove Special character一栏设置可移除的特殊字符为空格 设置“插入/更新”内容,实现清洗内容与待清洗内容之间的映射,再运行转换

8.2 数据库数据清洗 2) 对“格式错误类型2”进行清洗 方法1 运行SQL脚本对“格式错误类型2”进行清洗 第八章 清洗RDBMS数据实例 2) 对“格式错误类型2”进行清洗 格式清洗的前提:正常情况下,tname(教师姓名)一般是中文或者英文,因此需要将tname字段下不是中文或者英文的内容筛选出,之后与teacher_info(教师信息表)做关联,将读取到的正确的tname值填充到course_info表中。 方法1 运行SQL脚本对“格式错误类型2”进行清洗 第一步 第二步 第三步 新建转换 连接数据库 编辑SQL脚本,单击“运行转换”按钮,即可执行SQL语句

8.2 数据库数据清洗 2) 对“格式错误类型2”进行清洗 方法2 第一步 第二步 第三步 第四步 运用控件对“格式错误类型2”进行清洗 第八章 清洗RDBMS数据实例 2) 对“格式错误类型2”进行清洗 方法2 运用控件对“格式错误类型2”进行清洗 第一步 第二步 第三步 第四步 建立表输入,并建立数据库连接,将查询结果作为本次转换的输入流 建立“表输入”“正则表达式”“插入/更新”之间的连接 设置“正则表达式”内容,注意在Remove Special character一栏设置可移除的特殊字符为空格 设置“插入/更新”内容,实现清洗内容与待清洗内容之间的映射,再运行转换

03 8.2 数据库数据清洗 逻辑错误清洗 逻辑错误数据的清洗可分为以下两类: 第一章 大数据概念与应用 逻辑错误清洗 逻辑错误数据的清洗可分为以下两类: 一是去掉重复的数据。在course_info表中存在所有字段内容都相同的情况,此为完全重复。 二是修正矛盾内容。在course_info表中存在“总学时=上机学时+实验学时+讲课学时”的关系,但是实际的数据结果并非如此。比如第238条数据:总学时为40,上机学时、实验学时、讲课学时均为0,显然不符合逻辑;第282条数据:总学时为64,上机学时为0,实验学时为0,讲课学时为40。 03

8.2 数据库数据清洗 1) 对“逻辑错误类型1”进行清洗 逻辑错误类型1是指字段内容重复的情况。 方法1 第一步 第二步 第三步 第四步 第八章 清洗RDBMS数据实例 1) 对“逻辑错误类型1”进行清洗 逻辑错误类型1是指字段内容重复的情况。 方法1 运行SQL脚本对“逻辑错误类型1”清洗 第一步 第二步 第三步 第四步 新建转换 连接数据库 编辑SQL脚本,删除重复的字段内容 运行转换按钮

8.2 数据库数据清洗 1) 对“逻辑错误类型1”进行清洗 逻辑错误类型1是指字段内容重复的情况。 方法2 第一步 第二步 第三步 第四步 第八章 清洗RDBMS数据实例 1) 对“逻辑错误类型1”进行清洗 逻辑错误类型1是指字段内容重复的情况。 方法2 运用控件对“逻辑错误类型1”进行清洗 第一步 第二步 第三步 第四步 建立表输入,明确输入流 建立“表输入”“去除重复记录”“表输出”之间的连接 设置去除重复记录。”用来比较的字段”列表填写course_info表中的所有字段 设置“表输出”

8.2 数据库数据清洗 2) 对“逻辑错误类型2”进行清洗 逻辑错误类型2是指字段内容存在的一些逻辑错误,例如加减乘除。 方法1 第一步 第八章 清洗RDBMS数据实例 2) 对“逻辑错误类型2”进行清洗 逻辑错误类型2是指字段内容存在的一些逻辑错误,例如加减乘除。 方法1 运用SQL对“逻辑错误类型2”进行清洗 第一步 第二步 第三步 第四步 新建转换 连接数据库 编辑SQL脚本,里面包括一些简单的字段相加结果 单击运行转换

8.2 数据库数据清洗 2) 对“逻辑错误类型2”进行清洗 逻辑错误类型2是指字段内容存在的一些逻辑错误,例如加减乘除。 方法2 第一步 第八章 清洗RDBMS数据实例 2) 对“逻辑错误类型2”进行清洗 逻辑错误类型2是指字段内容存在的一些逻辑错误,例如加减乘除。 方法2 运用控件对“逻辑错误类型2”进行清洗 第一步 第二步 第三步 第四步 建立表输入,确立输入流 建立“表输入”“计算器”“插入/更新”之间的连接 设置“计算器”,某一字段等于其他字段之和 设置“插入/更新”,并运行转换

8.2 数据库数据清洗 第八章 清洗RDBMS数据实例 非需求数据清洗 所谓非需求数据清洗,就是删除对业务不重要的字段。在进行这一操作前,备份源数据显得相当重要。Kettle中使用“字段选择”控件中的“移除”功能可以实现字段的删除操作。 04

大数据应用人才培养系列教材 第八章 清洗RDBMS数据实例 8.1 准备工作 8.2 数据库数据清理 8.3 数据脱敏处理 习题

8.3 数据脱敏处理 第八章 清洗RDBMS数据实例 数据脱敏(Data Masking)是指用随机字符或数据隐藏原始数据的过程。一般需要进行数据脱敏处理的数据包括个人识别数据、个人敏感数据和商业敏感数据等。Kettle数据加密包括4种类型:对称加密、PGP加密流、PGP解密流、生成密钥。本节主要介绍DES加密、PGP加密流。

01 8.3 数据脱敏处理 DES加密 第一步 第二步 第三步 第四步 第八章 清洗RDBMS数据实例 DES加密 DES(Data Encryption Standard)是对称加密的一种实现,即加密、解密运算所使用的密钥是相同的。下面介绍对course_info表中tcode字段进行DES加密。 01 第一步 第二步 第三步 第四步 建立表输入,确立输入流,将tcode的类型转换为binary 建立“表输入”“对称加密”“Excel输出”之间的连接 自定义对称加密信息 设置Excel表输出,并单击运行转换

02 8.3 数据脱敏处理 PGP加密流 第一步 第二步 第三步 第四步 第八章 清洗RDBMS数据实例 PGP加密流 PGP(Pretty Good Privacy)加密属于非对称加密,在使用Kettle的PGP加密流之前,需要安装Gpg 4win软件生成密钥。 02 第一步 第二步 第三步 第四步 下载安装Gpg4win软件,创建证书以及个人信息、选择认证格式等 创建密钥 建立表输入,确定输入流 建立“表输入”“PGP加密流”“Excel输出”之间的连接

8.3 数据脱敏处理 第八章 清洗RDBMS数据实例 PGP加密流 PGP(Pretty Good Privacy)加密属于非对称加密,在使用Kettle的PGP加密流之前,需要安装Gpg 4win软件生成密钥。 03 第五步 第六步 编辑PGP加密流控件,要求结合之前gpg创建时的信息 设置Excel表输出,并运行转换

8.3 数据脱敏处理 第八章 清洗RDBMS数据实例 字符加密 数据脱敏除了进行加密外,还可用字符代替数据的部分内容。为了更好地说明问题,我们选用teacher_info表中的i_card(身份证号)、phone(电话)、b_card(银行卡号)进行脱敏处理。 脱敏规则如下:身份证号的脱敏规则为用“*”替代月、日;手机号码的脱敏规则为用“*”替代第4~7位内容;银行卡号的脱敏规则为用“*”替代第7~15位的内容,具体操作步骤如下所示: 04

05 8.3 数据脱敏处理 字符加密 第一步 第二步 第三步 第四步 建立表输入,确立输入流 第八章 清洗RDBMS数据实例 字符加密 05 第一步 第二步 第三步 第四步 建立表输入,确立输入流 建立“表输入”“字符串替换”“插入/更新”之间的连接 设置“字符串替换”,并在“使用...”替换一栏参照上述脱敏规则进行填写 设置插入/更新,并运行转换

大数据应用人才培养系列教材 第八章 清洗RDBMS数据实例 8.1 准备工作 8.2 数据库数据清洗 8.3 数据脱敏处理 习题

习题: 1.练习使用Kettle软件对数据库缺失值进行清洗。 2.练习使用Kettle软件对数据库格式错误内容进行清洗。 5.大数据预处理的方法有哪些? 6.练习使用Kettle软件对数据库中的敏感数据进行脱敏处理,包括加密以及特殊字符替换两种方法。

AIRack人工智能实验平台 ——一站式的人工智能实验平台 DeepRack深度学习一体机 ——开箱即用的AI科研平台 BDRack大数据实验平台——一站式的大数据实训平台

云创公众号推荐 刘鹏看未来 云计算头条 中国大数据 深度学习世界 云创大数据订阅号 云创大数据服务号 高校大数据与人工智能 微信号:lpoutlook 云计算头条 微信号:chinacloudnj 中国大数据 微信号:cstorbigdata 深度学习世界 微信号:dl-world 云创大数据订阅号 微信号:cStor_cn 云创大数据服务号 微信号:cstorfw 高校大数据与人工智能 微信号:data_AI

手机APP推荐 我的PM2.5 随时随地准确 查看身边的 PM2.5值 同声译 支持26种语言 互译的实时翻 译软件 我的南京 云创大数据为路 况大数据应用提 供技术支持 科技头条 汇聚前沿资讯 的科技情报站

网站推荐 万物云 智能硬件大数据免费托管平台 环境云 环境大数据开放共享平台

感谢聆听