ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python归一化方法

2020-03-22 11:55:38  阅读:233  来源: 互联网

标签:min python max 标准化 数据 归一化 np 方法


数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。以下是三种常用的归一化方法:

min-max标准化(Min-Max Normalization)

也称为离差标准化,是对原始数据的线性变换,使结果值映射到[0 , 1]之间。转换函数如下: 

 

其中max为样本数据的最大值,min为样本数据的最小值。这种方法有个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

from sklearn import preprocessing  
  
import numpy as np 
  
X = np.array([[ 1., -1., 2.], 
  
       [ 2., 0., 0.], 
  
       [ 0., 1., -1.]]) 
  
min_max_scaler = preprocessing.MinMaxScaler() 
  
X_minMax = min_max_scaler.fit_transform(X)

结果:

array([[ 0.5 , 0. , 1. ], 
          [ 1. , 0.5 , 0.33333333], 
          [ 0. , 1. , 0. ]])

找大小的方法直接用np.max()和np.min()就行了,尽量不要用python内建的max()和min()

Z-score标准化方法

也称为均值归一化(mean normaliztion), 给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1。转化函数为: 

 

mu(即均值)用np.average(),sigma(即标准差)用np.std()即可.
def Z_ScoreNormalization(x,mu,sigma):
    x = (x - mu) / sigma;
    return x;

b = np.array([[1,2,3],[4,5,6]])
print(Z_ScoreNormalization(b,b.mean(),b.std()))

 

标签:min,python,max,标准化,数据,归一化,np,方法
来源: https://www.cnblogs.com/wt714/p/12545129.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有