加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python数据标准化

发布时间:2020-12-20 10:23:05 所属栏目:Python 来源:网络整理
导读:Z-score标准化 1.产生随机数 import numpy as np # # 产生随机数 data_1 = np.random.randn(3,4) # 从标准正态分布中返回一个或多个样本值. data_2 = np.random.rand(3,4) # 产生(0,1)的数 print ( ‘ randn产生的随机数:n ‘ ,data_1) print ( ‘ rand产生

Z-score标准化

1.产生随机数

import numpy as np
## 产生随机数
data_1 = np.random.randn(3,4) # 从标准正态分布中返回一个或多个样本值.
data_2 = np.random.rand(3,4)  # 产生(0,1)的数
print(randn产生的随机数:n,data_1)
print(rand产生的随机数:n,data_2)
Shape = data_1.shape
print(data_1的维数:n,Shape)

?

2.使用sklearn包

from sklearn.preprocessing import StandardScaler

## 标准化(使特征数据方差为1,均值为0)

# 使用sklearn的包
scaler = StandardScaler()
scaler.fit(data_2)                               # 使用transfrom必须要用fit语句
trans_data_2 = scaler.transform(data_2)          # transfrom通过找中心和缩放等实现标准化
fit_trans_data_2 = scaler.fit_transform(data_2)  # fit_transfrom为先拟合数据,然后转化它将其转化为标准形式
print(使用fit,transform标准化的数据:n,trans_data_2)
print(使用fit_transform标准化的数据:n,fit_trans_data_2)

?

3.使用numpy进行处理

import numpy as np
# 使用numpy的语句
Sum_total = data_2.sum()        # 整个矩阵求和
Sum_row = data_2.sum(axis=1)    # 行求和
Sum_col = data_2.sum(axis=0)    # 列求和
mean = np.mean(data_2,axis=0)  # 求平均值
std = np.std(data_2,axis=0)    # 标准差
var = std**2
print(data_2求和为:n,Sum_col/3)
print(平均值为:n,mean)
print(方差为:n,var)
numpy_trans_data_2 = (data_2 - mean)/std
print(使用numpy进行标准化:n,numpy_trans_data_2)

?注意:z-score标准化是要除以std(标准差),恰好对应于StandardScaler()

  min-max标准化仅仅将StandardScaler()换为MinMaxScaler()即可

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读