web-dev-qa-db-fra.com

Standardiser certaines colonnes dans Python Pandas dataframe?

Le code Python ci-dessous ne me renvoie qu'un tableau, mais je veux que les données mises à l'échelle remplacent les données d'origine.

from sklearn.preprocessing import StandardScaler
df = StandardScaler().fit_transform(df[['cost', 'sales']])
df

production

array([[ 1.99987622, -0.55900276],
       [-0.49786658, -0.45658181],
       [-0.5146864 , -0.505097  ],
       [-0.48104676, -0.47814412],
       [-0.50627649,  1.9988257 ]])

données originales

id  cost    sales   item
1   300       50    pen
2   3         88    bottle
3   1         70    drink
4   5         80    cup
5   2        999    ink
7
BigData

Réassignez-le simplement

df[['cost', 'sales']] = StandardScaler().fit_transform(df[['cost', 'sales']])
df
Out[45]: 
   id      cost     sales    item
0   1  1.999876 -0.559003     pen
1   2 -0.497867 -0.456582  bottle
2   3 -0.514686 -0.505097   drink
3   4 -0.481047 -0.478144     cup
4   5 -0.506276  1.998826     ink
14
YOBEN_S