Python 来自SKL的MinMaxScaler在循环中学习?
我做到了: 一位同事告诉我将MinMaxScaler放入每次初始化的循环中Python 来自SKL的MinMaxScaler在循环中学习?,python,scikit-learn,Python,Scikit Learn,我做到了: 一位同事告诉我将MinMaxScaler放入每次初始化的循环中 这真的有必要吗?不,您不需要,您使用的方法是fit\u transform,这意味着它适合然后转换,例如: Scaler = MinMaxScaler() for Key in Data: Columns = Data[Key].columns ScaledData = Scaler.fit_transform(Data[Key]) Data[Key] = pd.DataFrame(ScaledD
这真的有必要吗?不,您不需要,您使用的方法是
fit\u transform
,这意味着它适合然后转换,例如:
Scaler = MinMaxScaler()
for Key in Data:
Columns = Data[Key].columns
ScaledData = Scaler.fit_transform(Data[Key])
Data[Key] = pd.DataFrame(ScaledData, columns=Columns)
缩放数据帧为:
from sklearn.preprocessing import MinMaxScaler
Scaler = MinMaxScaler()
np.random.seed(99)
Data = pd.DataFrame({'a':np.random.uniform(0,1,5),'b':np.random.uniform(1,2,5)})
Data
a b
0 0.672279 1.565617
1 0.488078 1.297622
2 0.825495 1.046696
3 0.031446 1.990627
4 0.808050 1.006826
df = pd.DataFrame()
for Key in Data.columns:
df[Key] = Scaler.fit_transform(Data[[Key]]).ravel()
print("column is "+ key + " min /max :" + str(Scaler.data_min_[0]) + " " + str(Scaler.data_max_[0]))
column is a min /max :0.031446387626298145 0.8254951740358963
column is a min /max :1.0068257330436552 1.9906273994707961
a b
0 0.807044 0.567992
1 0.575068 0.295585
2 1.000000 0.040526
3 0.000000 1.000000
4 0.978030 0.000000