Machine learning 使用MinMaxScaler的结果很差,我是否使用了错误的函数?

Machine learning 使用MinMaxScaler的结果很差,我是否使用了错误的函数?,machine-learning,scikit-learn,data-science,Machine Learning,Scikit Learn,Data Science,我在float 32中有一个带有值的数组,我似乎从sklearn minMaxScaler函数中得到了错误的结果 # ensure all data is float values = values.astype('float32') print(values) [[ 1. 2. 3. 0. 0.] [ 2. 2. 3. 0. 0.] [ 2. 3. 3. 0. 0.] [ 2. 3. 4. 0. 0.] [ 1. 2. 3. 0. 0.] [

我在float 32中有一个带有值的数组,我似乎从sklearn minMaxScaler函数中得到了错误的结果

# ensure all data is float
values = values.astype('float32')
print(values)
[[ 1.  2.  3.  0.  0.]
 [ 2.  2.  3.  0.  0.]
 [ 2.  3.  3.  0.  0.]
 [ 2.  3.  4.  0.  0.]
 [ 1.  2.  3.  0.  0.]
 [ 1.  2.  3.  0.  0.]]
In [34]:

# normalize features
scaler = MinMaxScaler(feature_range=(0, 1))
scaled = scaler.fit_transform(values)
print(scaled)
[[ 0.  0.  0.  0.  0.]
 [ 1.  0.  0.  0.  0.]
 [ 1.  1.  0.  0.  0.]
 [ 1.  1.  1.  0.  0.]
 [ 0.  0.  0.  0.  0.]
 [ 0.  0.  0.  0.  0.]]
In [28]:

我是否使用了错误的函数?提前谢谢

MinMaxScaler按列缩放。所以你的结果是正确的。例如,在第一列中,最小值(1)替换为0,最大值(2)替换为1,正如预期的那样,

MinMaxScaler缩放每列。所以你的结果是正确的。例如,在第一列中,最小值(1)替换为0,最大值(2)替换为1,正如预期的那样

那么,规范化所有数据的正确方法是什么?为什么MinmaxScaler结果不适合您?你想要实现什么?请扩展您的问题我正在尝试规范化我的数据,我正在遵循一个教程说使用minmaxscaler,但我最终使用了sklearn的规范化函数,它工作得很好。谢谢你的帮助@scikit中的user2162942
normalize()
函数将对行进行规范化。因此,请仔细检查输出值。你确定要这样做吗?那么,规范化我所有数据的正确方法是什么?为什么MinmaxScaler结果不适合你?你想要实现什么?请扩展您的问题我正在尝试规范化我的数据,我正在遵循一个教程说使用minmaxscaler,但我最终使用了sklearn的规范化函数,它工作得很好。谢谢你的帮助@scikit中的user2162942
normalize()
函数将对行进行规范化。因此,请仔细检查输出值。你确定你想要吗?