数据缩放方法总结

本文介绍了数据预处理中的三种重要缩放方法:标准化(Z-Score)、属性缩放到指定范围(如0-1之间)和正则化。标准化通过去除均值和方差实现,使数据具有零均值和单位方差。范围缩放常用于增强小方差属性的稳定性,保持稀疏矩阵。正则化则用于将样本缩放到单位范数,常用于计算样本间相似性。文章还提到了sklearn库中对应的实现方法。
摘要由CSDN通过智能技术生成

 

一、标准化(Z-Score),或者去除均值和方差缩放

标准分数(standard score)也叫z分数(z-score),是一个分数与平均数的差再除以标准差的过程。用公式表示为:z=(x-μ)/σ。其中x为某一具体分数,μ为平均数,σ为标准差。

Z值的量代表着原始分数和母体平均值之间的距离,是以标准差为单位计算。在原始分数低于平均值时Z则为负数,反之则为正数。

标准分数的作用和特点:
标准分数可以回答这样一个问题:"一个给定分数距离平均数多少个标准差?"在平均数之上的分数会得到一个正的标准分数,在平均数之下的分数会得到一个负的标准分数。

标准分数是一种可以看出某分数在分布中相对位置的方法。标准分数能够真实的反应一个分数距离平均数的相对标准距离。如果我们把每一个分数都转换成标准分数,那么每一个标准分数会以标准差为单位表示一个具体分数到平均数的距离或离差。将成正态分布的数据中的原始分数转换为标准分数,我们就可以通过查阅标准分数在正态曲线下面积的表格来得知平均数与标准分数之间的面积,进而得知原始分数在数据集合中的百分等级。[1]


一个数列的各标准分数的平方和等于该数列数据的个数,并且标准分数的标准差和方差都为1。

例如:某中学高(1)班期末考试,已知语文期末考试的全班平均分为73分,标准差为7分,甲得了78分;数学期末考试的全班平均分为80分,标准差为6.5分,甲得了83分。甲哪一门考试成绩比较好?


因为两科期末考试的标准差不同,因此不能用原始分数直接比较。需要将原始分数转换成标准分数,然后进行比较。


Z(语文)=(78-73)/7=0.71 Z(数学)=(83-80)/6.5=0.46  甲的语文成绩在其整体分布中位于平均分之上0.71个标准差的地位,他的数学成绩在其整体分布中位于平均分之上0.46个标准差的地位。由此可见,甲的语文期末考试成绩优于数学期末考试成绩。

由于标准分数不仅能表明原始分数在分布中的地位,它还是以标准差为单位的等距量表,故经过把原始分数转化为标准分数,可以在不同分布的各原始分数之间进行比较。

 

特点:

(1)样本平均值为0,方差为1;

(2)区间不确定,处理后各指标的最大值、最小值不相同;

(3)对于指标值恒定的情况不适用;
(4)对于要求标准化后数据 大于0 的评价方法(如几何加权平均法)不适用。

 

实现时,有两种不同的方式:

  • 使用sklearn.preprocessing.scale()函数,可以直接将给定数据进行标准化。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

>>> from sklearn import preprocessing

>>> import numpy as np

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

...               [ 2.,  0.,  0.],

...               [ 0.,  1., -1.]])

>>> X_scaled = preprocessing.scale(X)

 

>>> X_scaled                                         

array([[ 0.  ..., -1.22..., 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值