一起规范化所有数据
Normalize all data together
下面是简单的代码。我想像一列一样规范化所有数据。但是我有:
from sklearn.preprocessing import MinMaxScaler
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
scaler = MinMaxScaler()
print(data)
print(scaler.fit_transform(data))
[[-1, 2],
[-0.5, 6],
[0, 10],
[1, 18]]
[[0. 0. ]
[0.25 0.25]
[0.5 0.5 ]
[1. 1. ]]
Python 分隔列并分别对其进行归一化。所以我们在两列中有相同的值。原则上,我可以将第一列和第二列合并为一个,然后拆分。但我不认为那个想法是最好的。
欢迎任何想法...
更新:
我不想要每列的规范化数据。
我要了
from sklearn.preprocessing import MinMaxScaler
data = [[-1], [-0.5], [0], [1], [2], [6], [10], [18]]
scaler = MinMaxScaler()
print(data)
print(scaler.fit_transform(data))
[[-1], [-0.5], [0], [1], [2], [6], [10], [18]]
[[0. ]
[0.02631579]
[0.05263158]
[0.10526316]
[0.15789474]
[0.36842105]
[0.57894737]
[1. ]]
但我还是希望它有两列。
像这样:
[[0. , 0.15789474]
[0.02631579, 0.36842105]
[0.05263158, 0.57894737]
[0.10526316, 1. ]]
在您的情况下,您应该简单地应用最小-最大缩放器转换公式,而不是使用 sklearn 模块:
import numpy as np
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
print(data)
print((data-np.min(data))/(np.max(data)-np.min(data)))
[[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
[[0. 0.15789474]
[0.02631579 0.36842105]
[0.05263158 0.57894737]
[0.10526316 1. ]]
下面是简单的代码。我想像一列一样规范化所有数据。但是我有:
from sklearn.preprocessing import MinMaxScaler
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
scaler = MinMaxScaler()
print(data)
print(scaler.fit_transform(data))
[[-1, 2],
[-0.5, 6],
[0, 10],
[1, 18]]
[[0. 0. ]
[0.25 0.25]
[0.5 0.5 ]
[1. 1. ]]
Python 分隔列并分别对其进行归一化。所以我们在两列中有相同的值。原则上,我可以将第一列和第二列合并为一个,然后拆分。但我不认为那个想法是最好的。
欢迎任何想法...
更新:
我不想要每列的规范化数据。 我要了
from sklearn.preprocessing import MinMaxScaler
data = [[-1], [-0.5], [0], [1], [2], [6], [10], [18]]
scaler = MinMaxScaler()
print(data)
print(scaler.fit_transform(data))
[[-1], [-0.5], [0], [1], [2], [6], [10], [18]]
[[0. ]
[0.02631579]
[0.05263158]
[0.10526316]
[0.15789474]
[0.36842105]
[0.57894737]
[1. ]]
但我还是希望它有两列。
像这样:
[[0. , 0.15789474]
[0.02631579, 0.36842105]
[0.05263158, 0.57894737]
[0.10526316, 1. ]]
在您的情况下,您应该简单地应用最小-最大缩放器转换公式,而不是使用 sklearn 模块:
import numpy as np
data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
print(data)
print((data-np.min(data))/(np.max(data)-np.min(data)))
[[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
[[0. 0.15789474]
[0.02631579 0.36842105]
[0.05263158 0.57894737]
[0.10526316 1. ]]