数据标准化处理,data.mean和data.std

工作中经常遇到每个指标数据取值范围过大,为了消除数量级带来的另想,需要进行标准化处理.

#-*- coding: utf-8 -*-
#标准差标准化

import pandas as pd

datafile = '../data/zscoredata.xls' #需要进行标准化的数据文件;
zscoredfile = '../tmp/zscoreddata.xls' #标准差化后的数据存储路径文件;

#标准化处理
data = pd.read_excel(datafile)
# print(data.mean(axis=0));exit()
data = (data - data.mean(axis = 0))/(data.std(axis = 0)) #简洁的语句实现了标准化变换,类似地可以实现任何想要的变换。
# data.mean(axis=0) 输出矩阵为一行,求每列的平均值,同理data.mean(axis=1) 输出矩阵为一列,求每行的平均值
# data.std(axis=0) 输出矩阵为一列,求每列的标准差,同理data.std(axis=1) 输出矩阵为一列,求每行的标准差
#标准差也成为标准偏差,表示数据的离散程度,和标准差大小成反比
data.columns=['Z'+i for i in data.columns] #表头重命名。

data.to_excel(zscoredfile, index = False) #数据写入
原文地址:https://www.cnblogs.com/hanshuai0921/p/9029733.html