假设我们有一个df
,如下所示:
id A B
50 1 5
60 2 6
70 3 7
80 4 8
我想知道如何仅对0和1之间的column B
进行规范化,同时保持其他列id
和column A
完全不受影响?
编辑1:如果执行以下操作
import pandas as pd
df = pd.DataFrame({ 'id' : ['50', '60', '70', '80'],
'A' : ['1', '2', '3', '4'],
'B' : ['5', '6', '7', '8']
})
from sklearn import preprocessing
min_max_scaler = preprocessing.MinMaxScaler()
X_minmax = min_max_scaler.fit_transform(df.values[:,[2]])
我得到X_minmax
如下
0
0.333333
0.666667
1
我希望将这4个值放置在数据框B
中的列df
的位置,而无需更改其他2列,如下所示:
id A B
50 1 0
60 2 0.333333
70 3 0.666667
80 4 1
答案 0 :(得分:2)
您可以重新分配列的值:
df.B = (df.B - df.B.mean()) / (df.B.max() - df.B.min())
答案 1 :(得分:2)
您可能想做这样的事情。
let stringNumberOne = "2.3"; // typeof(stringNumberOne) => "string"
let stringNumberTwo = "3.3"; // typeof(stringNumberTwo) => "string"
let stringAddition = stringNumberOne + stringNumberTwo; // Result: "2.33.3"
let convertedStringNumberOne = Number(stringNumberOne); // typeof(convertedStringNumberOne) => "number"
let convertedStringNumberTwo = Number(stringNumberTwo); // typeof(convertedStringNumberTwo) => "number"
let convertedStringAddition = convertedStringNumberOne + convertedStringNumberTwo; // Result: 5.6