1、数据挖掘概念与设计第三章 数据预处理 3.1 数据预处理 3.2 数据清理 3.3 数据集成 3.4 数据规约 3.5 数据变换与数据离散化 3.6小结第三章 数据预处理 3.3.1 为什么要对数据预处理低质量的数据将导致低质量的挖掘结果准确性完整性一致性时效性可信性可 解释性3.1 数据预处理高质量数据 3.1.2 数据处理的主要任务数据清理数据 集成数据归约数据变换3.1 数据预处理 现实世界的的数据一般是不完整的,有噪声的和不一致性的。数据清理试图填充缺失值,光滑噪声、 识别 离 群 点、纠正数据中的不一致。 3.2.1 缺失值 1) 忽略元组 :缺少类标号时通常这么做。但是忽略的元组其
2、他属性也不能用,即便是有用的。 2) 人工填写 :该方法很费事费时,数据集很大、缺失值很多时可能行不通。 3) 使用一个全局常量填充缺失值 :将缺失值的属性用同一个常量替换。(方法简单但不可靠) 4) 使用属性的中心度量(均值、中位数)填写缺失值 :对于正常的(对称的)数据分布,可以使用均值;对于倾斜数据(非对称)应该使用中位数。 5) 使用与给定元组同一类的所有样本的属性均值或中位数 : 利用另外一个属性分类数据,计算缺失值的属性值该是多少(均值或中位数)。 6) 使用最可能的值填充 : 利用回归、贝叶斯 形式化 方法 的 基于推理的工具或决策树归纳确定 。3.2 数据清理 3.2.2 噪声
3、数据噪声 :被测量的变量的随机误差或方差。 1) 分箱 : 排序后的数据按等 频(每个箱几个值)分 箱,然后 :用 箱均值光滑:箱中每个值都被替换为箱中的均值。用 箱中位数光滑:箱中的每一个只都被替换为该箱的中位数。用 箱边界光滑:给定箱中的最大和最小值同样被视为箱边界 , 箱 中每个值都被替换为最接近的边界值。 2) 回归 :可以用一个函数拟合数据来光滑数据。 3) 离 群 点分析 :通过如聚类来检测利群点。3.2 数据清理 3.2.3 数据清理作为一个过程 数据清理的第一步是偏差 检测。导致偏差的因素很多,认为输入错误、有意错误、数据退化(过时数据)、编码不一致、设备错误、系统错误 。 如
4、何 进行偏差检测?使用任何关于数据性质的知识: 元数据 ( 主要是描述数据 属性 (property)的 信息 ) 、数据的基本统计描述(均值、中位数、众数、方差、标准差等)、唯一性规则、连续性规则、空值规则。3.2 数据清理数据 挖掘经常需要数据集成 合并来自多个数据存储的数据 。3.3.1 实体识别问题模式 集成和对象匹配可能需要技巧,例如如何让计算机识别customer_id和另外一个数据库的 cust_number是同一属性? 利用元数据,每个属性的元数据包括名字、含义、数据类型和属性的值的允许范围,以及处理空值的规则。这些元数据可以用来帮助避免模式集成的错误,还有助于变化 数据3.3
5、 数据集成 3.3.2 冗余和相关分析一 个 属性如果 能由另一个或另一组属性 “ 导出 ” ,则这个属性可能是冗余的;属性或维命名的不一致也可能导致结果数据集的冗余 。1.标称数据的卡方相关检验2.数值数据的相关系数3.数值数据的协方差3.3 数据集成 1.标称数据的卡方相关检验假设 A有 c个不同的值, a1, a2,.a c. B有 r个不同的值, b1,b2,b r.则 包含属性 A和属性 B的元组可以使用一个列联表来表示,其中 A属性的 c个不同值构成表的列, B属性的 r个不同值构成表的行。令 (Ai, Bj)表示属性 A取 ai而属性 B取 bj的联合事件,即( A=ai, B=bj).3.3 数据集成