数据清洗与规约方法

时间:2024-02-22 08:55:02

一、脏数据处理

为什么要预处理数据?

  • 数据缺失:记录为空&属性为空
  • 数据重复:完全重复&不完全重复
  • 数据错误:异常值&不一致
  • 数据不可用:数据正确但不可用

如何预防脏数据?

  • 制定数据标准
  • 优化系统设计

1.  处理数据缺失:

  • 忽略该记录
  • 使用默认值
  • 使用属性平均值
  • 使用同类样本平均值
  • 预测最可能的值

2.  处理数据重复:

  • 删除完全重复的记录
  • 合并不同的表,增加部分冗余属性

3.  处理数据错误:不一致

  • 制定清洗规则,进行匹配
  • 通过统计描述,找到异常值

 

二、噪声数据处理

1.  分箱:

把待处理的数据按照一定的规则放进一些箱子中,考察每一个箱子中的数据,采用某种方法分别对各个箱子中的数据进行处理。

需要确定的主要问题:分箱方法,即如何分箱;数据平滑方法,即如何对每个箱子中的数据进行平滑处理。

分箱方法:

  • 等深分箱法(统一权重):按记录行数分箱,每箱具有相同的记录数,每箱记录数称为箱的权重,也称为箱子的深度。每个箱子具有相同的记录数。
  • 等宽分箱法(统一区间):在整个属性值的区间上平均分布,即每个箱的区间范围是一个常量,称为箱子宽度。不能保证每个箱子中样本数一致。
  • 用户自定义区间:用户根据需要自定义区间。

平滑处理:

  • 按平均值平滑:对同一箱子中的数据求平均值,用平均值代替该箱子中的所有数据。
  • 按边界值平滑:用距离较小的边界值代替箱中的每一数据。
  • 按中指平滑:取箱子的中值,用来替代箱子中的所有数据。

2.  回归

发现两个相关的变量间的变化模式,通过使数据适合一个函数来平滑数据,即利用拟合函数对数据进行平滑。

回归方法:线性方法;非线性方法。

3.  聚类

将物理的或抽象对象集合分组为不同簇,找出并清除那些落在簇之外的值(鼓励点),这些鼓励点被视为噪声。

通过聚类分析发现异常数据:相似或向邻近的数据聚合在一起形成了各个聚类集合,而那些位于这些聚类集合之外的数据对象,被认为是异常数据。

特点:直接形成簇并对簇进行描述,不需要任何先验知识。

 

三、数据集成

模式匹配:整合不同数据源中的元数据。(A.user_id=B.customer_no)

数据冗余:一个属性可以由另外一个表导出。(平均月收入-月收入)

数据值冲突:来自不同数据源的属性值不同。(人民币-英镑)

聚集:对数据进行汇总。(avg, count, sum, min, max)

数据概化:用更抽象(更高层次)的概念来取代低层次或数据层的数据对象。(城市->国家)

规范化:将数据按照比例进行缩放,使之落入一个特定的区域,以消除数值型属性因大小不一而造成挖掘结果的偏差。(最小-最大规范化,零-均值规范化,小数定标规范化)

属性构造:利用已有属性集构造出新的属性,并加入到现有属性集合中以帮助挖掘更深层次的模式知识,提高挖掘结果准确性。(宽、高->面积)

 

四、数据规约

对大规模数据库内容进行复杂的数据分析通常需要耗费大量的时间。数据规约技术用于帮助从原有庞大数据集中获得一个精简的数据集合,并使用这一精简数据集保持原有数据集的完整性,这样在精简数据集上进行数据挖掘效率更高,并且挖掘出来的结果与使用原有数据集所获得的结果基本相同。

标准:

  • 用于数据规约的时间不应当超过或“抵消”在规约后的数据上挖掘节省的时间
  • 规约得到的数据比原数据小得多,但可以产生相同或几乎相同的分析结果

方法:

  • 数据立方体聚集:对某一维度求和。
  • 维规约:去掉无关属性。(逐步向前选择,逐步向后删除)
  • 数据压缩:用数据编码或变换,得到原始数据的压缩表示。(主成分分析,小波变换)
  • 数值规约
  • 离散化和概念分层生成

 

五、数据建模

概念模型:实体及关联关系

逻辑模型:数据实体细节(主键,外键,索引)

物理模型:数据的存储方式(数据拆分,数据表空间,数据集成)