一、是什么?
1. 归一化:是为了将数据映射到0~1之间,去掉量纲的过程,让计算更加合理,不会因为量纲问题导致1米与100mm产生不同。
行归一化:
列归一化:
2. z-标准化:消除分布产生的度量偏差,例如:班级数学考试,数学成绩在90-100之间,语文成绩在60-100之间,那么,小明数学90,语文100,小花数学95,语文95,如何评价两个综合成绩好坏的数学处理方式。
3. Normalizer归一化:
将每个样本缩放到单位范数(每个样本的范数为1),计算公式如下:
二、怎么用?
#导入数据到data变量中 import pandas data = pandas.read_csv('路径.csv') #(一)Min-Max 标准化 from sklearn.preprocessing import MinMaxScaler #初始化一个scaler对象 scaler = MinMaxScaler() #调用scaler的fit_transform方法,把我们要处理的列作为参数传进去 data['标准化后的A列数据'] = scaler.fit_transform(data['A列数据']) data['标准化后的B列数据'] = scaler.fit_transform(data['B列数据']) #(二)Z-Score标准化 (可在scale中直接实现) from sklearn.preprocessing import scale data['标准化后的A列数据'] = scale(data['A列数据']) data['标准化后的B列数据'] = scale(data['B列数据']) # (三) Normalizer归一化 from sklearn.preprocessing import Normalizer scaler = Normalizer() #归一化可以同时处理多个列,所以[0]第一个进行赋值 data['归一化后的A列数据'] = scaler.fit_transform(data['A列数据'])[0] data['归一化后的B列数据'] = scaler.fit_transform(data['B列数据'])[0]