繁体   English   中英

如何在 pandas dataframe 列中显示带 2 位小数的值?

[英]How do you display values in a pandas dataframe column with 2 decimal places?

我想要做的是让它无论值如何,它都显示 2 个小数位。

到目前为止我已经尝试过:

DF['price'] = DF['price'].apply(lambda x: round(x, 2))

但是,问题是我希望以小数点后 2 位显示所有内容,但像 0.5 这样的值保留在小数点后 1 位,因为它们不需要四舍五入。

有没有我可以申请的 function 提供以下类型的 output:

Current        After Changes
0              0.00
0.5            0.50
1.01           1.01
1.133333       1.13

理想情况下,这些值将被四舍五入,但如果这一切都有效,我愿意截断。

我想你想要这样的东西

DF['price'] = DF['price'].apply(lambda x: float("{:.2f}".format(x)))

这会将更改仅应用于该列

如果你只想修改你的值的格式而不对 pandas 做任何操作,你应该只执行以下指令:

pd.options.display.float_format = "{:,.2f}".format

您应该能够在这里获得更多信息:

https://pandas.pydata.org/docs/user_guide/options.html#number-formatting

您必须设置 pandas 显示的精度。 导入 pandas 后将其放在脚本之上:

import pandas as pd
pd.set_option('precision', 2)

尝试:

import pandas as pd
pd.set_option('display.precision', 2)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM