Python 将浮动列表转换为系列后的格式

Python 将浮动列表转换为系列后的格式,python,pandas,dataframe,jupyter,series,Python,Pandas,Dataframe,Jupyter,Series,我有一个熊猫系列,其值为[10000、300000、0、250000…]。我正在尝试规范化这些值,并通过这段代码成功地实现了这一点 def normalize (oldvalue, minvalue, maxvalue): newvalue = (oldvalue - minvalue) / (maxvalue - minvalue) return newvalue newvalues = [] for x in df.cost: newvalues.append(no

我有一个熊猫系列,其值为[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是一个规范化值的列表。我尝试了用新的规范化值替换原始序列值的不同方法。我尝试了以下方法:

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]

任何帮助都会收到

请尝试pd.options.display.float_format='${:,.17f}'。在代码之后/之前格式化,并使用pd.reset_选项('all')在执行完毕后将其重置为原始格式。注意:全部重置重置所有显示设置,有关详细信息:请首先检查,尝试使用如下向量化方法:
(df.cost df.cost.min())/(df.cost.max()-df.cost.min())
这将更加有效,因为熊猫将负责格式化,它可能会解决您的问题。如果没有,您能为我们提供
df.dtypes
?@anky\u 91谢谢worked@ysearka既然我必须对序列中的每一行进行规范化,那么我应该如何使用矢量化方法进行规范化呢?