我有一个熊猫系列,其值例如为[10000,300000,0,250000 ...]。我正在尝试将这些值标准化,并通过这段代码成功做到了
def normalize (oldvalue, minvalue, maxvalue):
newvalue = (oldvalue - minvalue) / (maxvalue - minvalue)
return newvalue
newvalues = []
for x in df.cost:
newvalues.append(normalize(int(x), int(df.cost.min()), int(df.cost.max())))
因此,现在 newvalues 是归一化值的列表。我尝试了用新的规范化值替换原始Series值的不同方法。我尝试了以下方法:
replace = pd.Series(newvalues)
df.cost.replace(df.cost.tolist(), newvalues)
我最终使用以下格式:
0 3.061224e-01
1 6.632653e-01
2 0.000000e+00
3 1.632653e-01
4 0.000000e+00
5 6.122449e-01
newvalues中的值看起来像这样:
[0.30612244897959184, 0.6632653061224489, 0.0, 0.16326530612244897, 0.0, 0.6122448979591837]
需要任何帮助