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()即可 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |