数据挖掘之数据规范化


  数据规范化处理是数据挖掘的一项基本操作。现实中,数据中不同特征的量纲可能不一致,数值间的差别可能很大,不进行处理可能会影响到数据分析的结果,因此,需要对数据按照一定比例进行缩放,使之落在一个特定的区域,便于进行综合分析。特别是基于距离的挖掘方法,在建模前一定要对数据进行规范化处理,如SVM,KNN,K-means,聚类等方法

 

数据规范化处理处理主要有以下三种

1,最小-最大规范化

  最小-最大规范化是对原始数据的线性变换,将数值值映射到[0,1]之间。

              

2,z-score

   z-score规范化也成标准差规范化,经过处理的数据均值为0,方差为1。是目前最为常用的规范化方法。

                   

式中`x为对应特征均值 ,σ为标准差 

 

3,小数定标规范化

   通过移动属性值的小数点,将属性值映射到[-1,1]之间,移动的小数点位数取决于属性值绝对值的最大值。

                          

python实现:

import pandas as pd import numpy as np # load raw_data
 feture_matrix= .... #max-min normalization
 X=(feture_matrix - feture_matrix.min())/(feture_matrix.max()-feture_matrix.min()) # z-score
 X= (feture_matrix - feture_matrix.mean()) / feture_matrix.std() # normalization by decimal scaling
 ferture_matrix/10**np.ceil(np.log10(data.abs().max()))

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM