如何在带有2个小数位的pandas数据框列中显示值?

问题描述

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

到目前为止,我尝试使用的方法是在另一篇文章中找到的:

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

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

有没有我可以应用的功能,可以提供以下类型的输出

Current        After Changes
0              0.00
0.5            0.50
1.01           1.01
1.133333       1.13

理想情况下,这些值将被四舍五入,但是如果这一切可行的话,我可以截断。

谢谢

解决方法

您必须设置大熊猫显示的精度。导入熊猫后,将其放在脚本的顶部:

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

我想你想要这样的东西

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

这会将更改仅应用于该列