对所选列的Pandas操作

时间:2016-09-19 07:25:27

标签: python pandas scikit-learn

我想标准化我的pandas数据框中的某些列。

dfTest = pd.DataFrame({
           'A':[14.00,90.20,90.95,96.27,91.21],
           'B':[103.02,107.26,110.35,114.23,114.68], 
           'C':['big','small','big','small','small']
         }) 

这不起作用,因为只能设置一个索引。如果仅选择单个列(如“A”),则sklearn会发出多个弃用警告

scaler = StandardScaler()
dfTest['A_scaled', 'B_scaled'] = scaler.fit_transform(dfTest[['A', 'B']])
dfTest

我怎么能实现这样的目标?

1 个答案:

答案 0 :(得分:1)

您可以将缩放列连接到原始DF,如下所示:

scaler = StandardScaler()
scaled_data = pd.DataFrame(data=scaler.fit_transform(dfTest[['A', 'B']]), 
                           columns=['A_scaled', 'B_scaled'])

pd.concat([dfTest, scaled_data], axis=1)

Image