python方差标准差归一化预测值怎么还原_Python机器学习库SKLearn:数据集转换之预处理数据2018-04-22...

本文介绍了Python中预处理数据时的两种重要方法:归一化和标准化,包括使用`preprocessing`库中的`StandardScaler`和`MinMaxScaler`。通过实例展示了如何使用这些方法对数据进行缩放,以及如何将标准化后的数据还原回原始值。
摘要由CSDN通过智能技术生成

如果原始数据不服从高斯分布,在预测时表现可能不好。在实践中,我们经常进行标准化(z-score 特征减去均值/标准差)。

1.1 标准正态分布(均值为0,方差为1) Scale函数的使用 对列进行z-score

from sklearn import preprocessing

import numpy as np

#1、数据标准化

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

[ 2., 0., 0.],

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

X_scaled = preprocessing.scale(X)

X_scaled

"""

输出标准化的结果:

array([[ 0. , -1.22474487, 1.33630621],

[ 1.22474487, 0. , -0.26726124],

[-1.22474487, 1.22474487, -1.06904497]])

"""

X_scaled.mean(axis=0) #用于计算均值和标准偏差的轴。如果为0,独立规范每个特征,否则(如果为1)标准化每个样品。

"""

输出归一化后的均值:

array([ 0., 0., 0.])

"""

X_scaled.std(axis=0)

"""

输出标准化后的标准差:

array([ 1., 1., 1.])

"""

1.2 预处理模块StandardScaler

其实现Transformer API以计算训练集上的平均值和标准偏差,以便以后能够在测试集上重新应用相同的变换。

#StandardScaler()的参数

"""

StandardScaler() 的参数with_mean 默认为True 表示使用密集矩阵,使用稀疏矩阵则会报错 ,with_mean= False 适用于稀疏矩阵

with_std 默认为True 如果为True,则将数据缩放为单位方差(单位标准偏差)

copy 默认为True 如果为False,避免产生一个副本,并执行inplace缩放。 如果数据不是NumPy数组或scipy.sparse CSR矩阵,则仍可能返回副本

"""

scaler = preprocessing.StandardScaler().fit(X)

scaler

"""

输出:

StandardScaler(copy=True, with_mean=True, with_std=True)

"""

#StandardScaler()的属性

scaler.mean_

"""

输出X(原数据)每列的均值:

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

"""

scaler.scale_

"""

输出X(原数据)每列的标准差(标准偏差):

array([ 0.81649658, 0.81649658, 1.24721913])

"""

scaler.var_

"""

输出X(原数据)每列的方差:

array([ 0.66666667, 0.66666667, 1.55555556])

"""

#StandardScaler()的方法

scaler.transform(X)

"""

输出X(原数据)标准化(z-score):

rray([[ 0. , -1.22474487, 1.33630621],

[ 1.22474487, 0. , -0.26726124],

[-1.22474487, 1.22474487, -1.06904497]])

"""

# StandardScaler().fit(X) 输入数据用于计算以后缩放的平均值和标准差

# StandardScaler().fit_transform(X)输入数据,然后转换它

scaler.get_params() #获取此估计量的参数

"""

输出:

{'copy': True, 'with_mean': True, 'with_std': True}

"""

scaler.inverse_transform(scaler.t

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值