数据挖掘(2.3)--数据预处理
Posted 码银
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据挖掘(2.3)--数据预处理相关的知识,希望对你有一定的参考价值。
目录
三、数据集成和转换
1.数据集成
数据集成是将不同来源的数据整合并一致地存储起来的过程。
不同来源的数据可能有不同的格式、不同的元信息和不同的表示方式等。
首先需要将它们变成一致的形式。
通常这个过程牵涉到数据架构的集成,处理属性值冲突,处理数据冗余性,对数据进行转化等的处理过程。
其中两个主要的问题:数据冗余和数据转换。
2.数据冗余性
原因:
数据冗余可能由许多技术和业务上的原因导致,
同一属性或对象在不同的数据库中的名称可能是不同的,
某些属性可能是由其他属性导出的。
2.1 皮尔森相关系数
皮尔森相关系数是计算两个数数值向量之间的相关性
此图,纯手工技艺。
当相关系数大于0时,称两个向量正相关;
当相关系数小于0时,称两个向量负相关;
当相关系数等于0时,称两个向量不相关。
容易得出,相关系数的取值范围是[-1,1]。
热力图展示环节 (matplotlib库的问题,导致热力图显示不全,建议升版本或降低版本)
python使用corr()函数计算数据中两两元素的皮尔系数
2.2卡方检验
对于非数值型的变量,计算其相关性可以使用卡方检验方法进行,卡方检验的计算方式为:
求和是对每一种不同的变量取值情形进行的,Oi是实际观测到的概率,而Ei是在变量彼此独立的假设下该情况发生概率的估计。
3.数据转换
数据在集成过程中很多情况下需要进行转换,数据转换包括平滑、聚合、泛化、规范化、属性和特征的重构等操作。
(1)数据平滑。数据平滑是将噪声从数据中移除的过程。数据平滑通常是对数据本身进行的,如在连续性的假设下,对时间序列进行平滑,以降低异常点的影响;数据平滑有时也指对概率的平滑。
(2)数据聚合。数据聚合是将数据进行总结描述的过程。数据聚合的目的一般是为了对数据进行统计分析,数据立方体和在线分析处理(OLAP)都是数据聚合的形式。
(3)数据泛化。数据泛化是将数据在概念层次上转化为较高层次的概念的过程。
(4)数据规范化。数据规范化是将数据的范围变换到一个比较小的、确定的范围的过程。数据规范化在一些机器学习方法的预处理中比较常用,可以改善分类效果和抑制过学习。常用的数据规范化方法有最小最大规范化、2-score规范化和十进制比例规范化等。
如下的公式是最小最大规范化的例子,它将数据映射到[0,1] 区间。
z-score规范化使用数据的均值μ和标准差σ来将数据转化到某个区间,如下的公式为z-score标准化的例子,规范化后的数据均值为0,标准差为1。
十进制比例规范化使用数据绝对值的极值进行规范化.对数据仅使用十进制放缩的方式进行规范化。如要将466,33,- 100,-10这几个数进行规范化,结果为:0.466,0.033,-0.1,0.01。
以上是关于数据挖掘(2.3)--数据预处理的主要内容,如果未能解决你的问题,请参考以下文章