1、数据清洗概述数据清洗概述主 讲:主 讲:X X XX X X目录C o n t e n t数据清洗简介数据清洗简介1数据标准化数据标准化2数据仓库数据仓库3数据清洗的概念 数据清洗就是对原始数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并使得数据保持精确性、完整性、一致性、有效性及唯一性,还可能涉及数据的分解和重组,最终将原始数据转换为满足数据质量或应用要求的数据。数据清洗对保持数据的一致和更新起着重要的作用,因此被用于如银行、保险、零售、电信和交通的多个行业。数据清洗主要有三个应用领域:数据仓库(Data Warehouse,DW)、数据库中知识的发现(Knowledg
2、e Discovery in Database,KDD)和数据质量管理(Data Quality Management,DQM)。数据清洗流程包含以下基本步骤:(1)分析数据并定义清洗规则。(2)搜寻并标识错误实例。(3)纠正发现的错误。(4)干净数据回流。(5)数据清洗的评判。数据清洗所需资源 (1)数据清洗环境,其为进行数据清洗所提供的基本硬件设备和软件系统,特别是已得到广泛应用的开源软件和工具。(2)终端窗口和命令行界面,比如Mac OS X上的Terminal程序或Linux上的bash程序。(3)适合程序员使用的编辑器,如Mac上的Text Wrangler,Linux上的vi或em
3、acs,或是Windows上的Notepad+、Sublime编辑器等。(4)Python客户端程序,如Enthought Canopy。另外,还需要足够的权限来安装一些程序包文件。(5)电子表格程序,如Microsoft Excel和Google Spreadsheets。其可用于数据呈现和可视化,并且以恰当的方式展示数据分析和挖掘的结果。(6)数据库软件,如MySQL数据库和Microsoft Access等。数据标准化的定义 数据标准化规范化(Data Standardization/Normalization)是机构或组织对数据的定义、组织、分类、记录、编码、监督和保护进行标准化的过程
4、,有利于数据的共享和管理,可以节省费用,提高数据使用效率和可用性。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。数据同趋化处理主要解决不同性质数据问题,对不同性质指标直接加总不能正确反映不同作用力的综合结果,必须先考虑改变逆指标数据性质,使所有指标对测评方案的作用力同趋化,然后再加总才能得出正确结果。数据无量纲化处理主要用于消除变量间的量纲关系,解决数据评价分析中数据的可比性。例如,多指标综合评价方法需要把描述评价对象不同方面的多个信息综合起来得到一个综合指标,由此对评价对象做整体评判,并进行横向或纵向比较。数据标准化的方法 (1)max-min标准化 对原始数据进行线性变换。设
5、minA和maxA分别为属性A的最小值和最大值,将A的一个原始值x通过max-min标准化映射成在区间0,1中的值x,其公式为:x=(x-minA)/(maxA-minA)。(2)z-score 标准化 基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化,将A的原始值x标准化到x,其公式为:x=(x-mean)/standard deviation。(3)Decimal scaling标准化 通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于属性A的取值中的最大绝对值。将属性A的原始值x到x的计算方法公式为:x=x/(10j)。其中,j是满
6、足条件的最小整数。(4)其他标准化方法 还有一些标准化方法的做法是将原始数据除以某一值,如将原始数据除以行或列的和,称总和标准化。如果原始数据除以每行或每列中的最大值,叫做最大值标准化。如果原始数据除以行或列的和的平方根,则称为模标准化(normal standardization)。数据仓库的定义 数据仓库(Data Warehouse,DW)是基于信息系统业务发展需要,基于传统数据库系统技术发展形成能够并逐步独立出来的一系列新的应用技术,目标是通过提供全面、大量的数据存储来有效支持高层决策分析。典型数据仓库的基本组成要素包括:(1)源数据单元 (2)数据准备单元 (3)数据存储单元 (4)
7、信息传递单元 (5)元数据单元 (6)管理控制单元数据仓库的分类 (1)传统数据仓库 企业把数据分成内部数据和外部数据,内部数据包括OLTP(联机事务处理系统)和OLAP(联机事务分析系统)的数据。企业首先需要将这些数据集中起来,经过转换放到这类数据库中,然后在数据库上对数据进行加工,建立各种主题模型,再提供报表分析业务。(2)数据集市 数据集市一般是用于某一类功能需求的数据仓库的简单模式,往往是由一些业务部门构建,也可以构建在企业数据仓库上。一般来说数据集市的数据源较少,但往往对数据分析的延时有很高的要求,并需要和各种报表工具有很好的对接。(3)关联发现数据仓库 在一些场景下,企业可能不知道
8、数据的内联规则,而是需要通过数据挖掘的方式找出数据之间的关联关系,隐藏的联系和模式等,从而挖掘出数据的价值。很多行业的新业务都有这方面的需求,如金融行业的风险控制,反欺诈等业务。上下文无关联的数据仓库一般需要在架构设计上支持数据挖掘能力,并提供通用的算法接口来操作数据。(4)实时处理数据仓库 随着业务的发展,企业客户需要对实时的数据做一些商业分析,譬如零售行业需要根据实时的销售数据来调整库存和生产计划。这类行业用户对数据的实时性要求很高,传统的离线批处理的方式不能满足需求,因此需要构建实时处理的数据仓库。数据仓库的所需的技术 (1)数据清洗 数据仓库需要从种类各异的多个数据源中导入大量数据,数
9、据仓库的一个重要任务就通过数据清洗保证数据的一致性与正确性。(2)数据粒度 数据仓库中存储的数据粒度将直接影响到数据仓库中数据的存储量及查询质量,并进一步影响数据仓库能否满足最终用户的分析需求。设计数据仓库时要合理确定数据粒度。(3)索引优化 不论是数据库还是数据仓库,索引查找是优化查询响应时间的重要方法,索引建立的好坏直接影响数据访问效率。(4)物化视图选择和维护 数据仓库中以物化视图(Materialized View)的形式存储大量来自多个异质数据源中的数据,数据仓库中采用物化视图进行快速查询和分析,能有效提高查询速度和响应时间。(5)数据仓库的管理维护 为了减少数据更新量,数据仓库一般采用增量式更新策略。此外,数据仓库必须建立有效的安全策略和授权访问控制机制。最后,数据仓库必须提供稳定可靠的数据备份和恢复策略。Thanks谢谢您的聆听!谢谢您的聆听!