【20210914】【数据分析】使用Python对数据进行标准化(归一化)

        数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位。为了消除指标之间的量纲影响,需要进行数据标准化处理,以增加数据之间的可比性。

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

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

        这种方法的缺陷就是:当有新数据加入时,可能会导致 max 和 min 的变化,需要重新进行标准化。

import numpy as np
from sklearn import preprocessing

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)

''' 找最大值和最小值,使用 np.max() 和 np.min()! '''

 2. Z-score标准化

        也叫均值归一化(mean normalization)。经过标准化的数据满足标准正态分布,即均值为0,标准差为1,转换函数为:

import numpy as np

X = np.array([1, -1, 2],
             [2, 0, 0],
             [0, 1, -1])

def Z_scoreNormalization(x):
    mu = x.mean()
    sigma = x.std()

    x = (x - mu) / sigma
    return x;


print(Z_scoreNormalization(X))

''' 求均值:np.mean()
    求标准差:np.std() '''

         (参考:python归一化方法

 

 

 

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Satisfying

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值