数据挖掘笔记—数据预处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据挖掘笔记—数据预处理相关的知识,希望对你有一定的参考价值。
1.原始数据存在的几个问题:不一致;重复;含噪声;维度高。
2.数据预处理包含数据清洗、数据集成、数据变换和数据归约几种方法。
3.数据挖掘中使用的数据的原则
应该是从原始数据中选取合适的属性作为数据挖掘属性,这个选取过程应参考的原则是:尽可能赋予属性名和属性值明确的含义;统一多数据源的属性值编码;去除惟一属性;去除重复性;去除可忽略字段;合理选择关联字段。
4.处理空缺值的方法:忽略该记录;去掉属性;手工填写空缺值;使用默认值;使用属性平均值;使用同类样本平均值;预测最可能的值。
5.噪声数据的处理方法:分箱;聚类;计算机和人工检查结合;回归
6.分箱:分箱方法是一种简单常用的预处理方法,通过考察相邻数据来确定最终值。所谓“分箱”,实际上就是按照属性值划分的子区间,如果一个属性值处于某个子区间范围内,就称把该属性值放进这个子区间所代表的“箱子”内。把待处理的数据(某列属性值)按照一定的规则放进一些箱子中,考察每一个箱子中的数据,采用某种方法分别对各个箱子中的数据进行处理。在采用分箱技术时,需要确定的两个主要问题就是:如何分箱以及如何对每个箱子中的数据进行平滑处理。
分箱的方法:有4种:等深分箱法、等宽分箱法、最小熵法和用户自定义区间法。
统一权重,也成等深分箱法,将数据集按记录行数分箱,每箱具有相同的记录数,每箱记录数称为箱子的深度。这是最简单的一种分箱方法。
统一区间,也称等宽分箱法,使数据集在整个属性值的区间上平均分布,即每个箱的区间范围是一个常量,称为箱子宽度。
用户自定义区间,用户可以根据需要自定义区间,当用户明确希望观察某些区间范围内的数据分布时,使用这种方法可以方便地帮助用户达到目的。
例:客户收入属性income排序后的值(人民币元):800 1000 1200 1500 1500 1800 2000 2300 2500 2800 3000 3500 4000 4500 4800 5000,分箱的结果如下。
统一权重:设定权重(箱子深度)为4,分箱后
箱1:800 1000 1200 1500
箱2:1500 1800 2000 2300
箱3:2500 2800 3000 3500
箱4:4000 4500 4800 5000
统一区间:设定区间范围(箱子宽度)为1000元人民币,分箱后
箱1:800 1000 1200 1500 1500 1800
箱2:2000 2300 2500 2800 3000
箱3:3500 4000 4500
箱4:4800 5000
用户自定义:如将客户收入划分为1000元以下、1000~2000、2000~3000、3000~4000和4000元以上几组,分箱后
箱1:800
箱2:1000 1200 1500 1500 1800 2000
箱3:2300 2500 2800 3000
箱4:3500 4000
箱5:4500 4800 5000
7.数据平滑方法:按平均值平滑、按边界值平滑和按中值平滑。
⑴按平均值平滑
对同一箱值中的数据求平均值,用平均值替代该箱子中的所有数据。
⑵按边界值平滑
用距离较小的边界值替代箱中每一数据。
⑶按中值平滑
取箱子的中值,用来替代箱子中的所有数据。
8.聚类:将物理的或抽象对象的集合分组为由类似的对象组成的多个类。
找出并清除那些落在簇之外的值(孤立点),这些孤立点被视为噪声。
9.回归;试图发现两个相关的变量之间的变化模式,通过使数据适合一个函数来平滑数据,即通过建立数学模型来预测下一个数值,包括线性回归和非线性回归。
10.数据集成:将多文件或者多数据库中的异构数据进行合并,然后存放在一个一致的数据存储中。考虑以下几个问题: 1.模式匹配2.数据冗余3.数据值冲突
11. 数据变换:1.平滑2.聚集3.数据概化4.规范化(1)最小-最大规范化(2)零-均值规范化(3)小数定标规范化5.属性构造
12.数据集成:将多文件或者多数据库中的异构数据进行合并,然后存放在一个一致的数据存储中。考虑以下几个问题: 1.模式匹配2.数据冗余3.数据值冲突
13.数据归约:目的是为了获得比原始数据小的多的,但不破坏数据完整性的挖掘数据集,该数据集可以得到与原始数据相同的挖掘结果。
数据归约的方法: 1.数据立方体聚集:把聚集的方法用于数据立方体。2.维归约:检测并删除不相关、弱相关或冗余属性。3.数据压缩:选择正确的编码压缩数据集。4.数值压缩:用较小的数据表示数据,或采用较短的数据单位,或者用数据模型代表数据。5.离散化和概念分层生成:使连续的数据离散化,用确定的有限个区段值代替原始值;概念分层是指用较高层次的概念替换低层次的概念,以此来减少取值个数。
14.数据立方体聚集 :是数据的多维建模和表示,由维和事实组成。
维归约:去掉不相关的属性,减少数据挖掘处理的数据量。
属性子集选择的基本方法包括以下几种: 1.逐步向前选择2.逐步向后删除3.向前选择和向后删除结合4.判定树归纳5.基于统计分析的归约
数据压缩:方法分为两类:无损压缩和有损压缩
数值归约常用的方法: 1.直方图2.聚类3.抽样:不放回简单随机抽样、放回简单随机抽样、聚类抽样和分层抽样4.线性回归5.非线性回归
15.数据变换涉及以下几个方面:1.平滑2.聚集3.数据概化4.规范化(1)最小-最大规范化(2)零-均值规范化(3)小数定标规范化5.属性构造
*规范化:(1)最小—最大规范化。原取值区间 [old_min,old_max],规范化后的新的取值区间[new_min,new_max]。
x’= 其中:x是属性的真实值,x’是规范化后的值。
例如:“客户背景数据”表中的客户月收入income属性的实际值范围为[12000,98000],要把这个属性值规范到[0,1],对属性值73600应用上述公式:
x’=(1.0-0)+0=0.716
根据精度要求保留小数(假设精度要求0.01),最终取值0.72就是属性值73600规范化后的值。
(2)零—均值规范化(z—score规范化),是根据属性值的平均值和标准差进行规范化,即:
x’= = = 为所有样本属性值的平均值,为样本的标准差。当属性值范围未知的时候,可以使用此方法进行规范化。
例:假设某属性的平均值和标准差分别为80、25,采用零-均值规范化66为:x’==-0.56
(3)小数定标规范化:通过移动属性A的小数点位置进行规范化 。
x’= 为满足式<1的最小整数。
例:假设某属性规范化前的取值范围为[-120,110],采用小数定标规范化66。由于该属性的最大绝对值为120,则由<1可得出=3,因此,66规范化后为:x’==0.066
以上是关于数据挖掘笔记—数据预处理的主要内容,如果未能解决你的问题,请参考以下文章
python数据分析与挖掘学习笔记-淘宝商品数据清洗及预处理
详解数据预处理和特征工程-数据预处理-特征选择-方差过滤菜菜的sklearn课堂笔记