MinMaxScaler()函数在sklearn包中
MinMaxScaler()函数原型为:
sklearn.preprocessing.MinMaxScaler(feature_range=(0, 1), copy=True)
其中:
feature_range:为元组类型,范围某认为:[0,1],也可以取其他范围值。
copy:为拷贝属性,默认为True,表示对原数据组拷贝操作,这样变换后元数组不变,False表 示变换操作后,原数组也跟随变化,相当于c++中的引用或指针。copy = 1 的效果 同 copy = True,copy = 0 的效果同 copy =False
函数表示的数学原型为:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min
#注意:上面的函数时对数组的每一列进行处理的,处理之前的数据类型为
numpy.array 或者 list(列表类型)。注意!:如果是numpy 类型,数据类型要设置成np.float64 或者 np.float32 的形式,如果是np.int 的形式会出现warning 的提醒。
如果是np.float64 ,MinMaxScaler() 函数处理之后是 数据类型是 np.float64;
如果是np.float32 ,MinMaxScaler() 函数处理之后是 数据类型是 np.float32;
如果是list ,MinMaxScaler() 函数处理之后是 数据类型是 np.float64;
处理之后是在设置范围feautre_range = (min, max) 中 min - max 这个范围内的数,并且数据的形状和原数据保持一致,处理之后的数据类型为np.float64。其中 min , max分别 默认为 0 , 1
下面是举例:
from sklearn import preprocessing
import numpy as np
x = np.array(