2017-05-07 190 views

回答

1

演示:

In [90]: df = pd.DataFrame(np.random.randn(5, 3), index=list('abcde'), columns=list('xyz')) 

In [91]: df 
Out[91]: 
      x   y   z 
a -0.325882 -0.299432 -0.182373 
b -0.833546 -0.472082 1.158938 
c -0.328513 -0.664035 0.789414 
d -0.031630 -1.040802 -1.553518 
e 0.813328 0.076450 0.022122 

In [92]: from sklearn.preprocessing import MinMaxScaler 

In [93]: mms = MinMaxScaler() 

In [94]: df[['x','z']] = mms.fit_transform(df[['x','z']]) 

In [95]: df 
Out[95]: 
      x   y   z 
a 0.308259 -0.299432 0.505500 
b 0.000000 -0.472082 1.000000 
c 0.306662 -0.664035 0.863768 
d 0.486932 -1.040802 0.000000 
e 1.000000 0.076450 0.580891 

相同的結果可使用sklearn.preprocessing.minmax_scale也實現:

from sklearn.preprocessing import minmax_scale 

df[['x','z']] = minmax_scale(df[['x','z']])