Sklearn的MinMaxScaler仅返回零

Giz*_*zmo 3 python scikit-learn

我试图使用preprocessingfrom 将某个数字缩放到0到1的范围sklearn.多数民众赞成我所做的:

data = [44.645, 44.055, 44.54, 44.04, 43.975, 43.49, 42.04, 42.6, 42.46, 41.405]
min_max_scaler = preprocessing.MinMaxScaler(feature_range=(0, 1))
data_scaled = min_max_scaler.fit_transform([data])
print data_scaled
Run Code Online (Sandbox Code Playgroud)

但data_scaled只包含零.我究竟做错了什么?

Ant*_*ina 6

当我尝试使用sklearn.preprocessing中的MinMaxScaler进行缩放时遇到了同样的问题.当我使用一个numpy数组的形状作为列表时,Scaler返回零,即[1,n].输入数组看起来像你的情况

data = [[44.645, 44.055, 44.54, 44.04, 43.975, 43.49, 42.04, 42.6, 42.46, 41.405]]
Run Code Online (Sandbox Code Playgroud)

我将数组的形状更改为[n,1].我是你的情况

data = [[44.645], 
        [44.055], 
        [44.540], 
        [44.040], 
        [43.975], 
        [43.490], 
        [42.040], 
        [42.600], 
        [42.460], 
        [41.405]]
Run Code Online (Sandbox Code Playgroud)

然后MinMaxScaler以适当的方式工作.