使用DataFrame时如何控制浮动格式?熊猫降价?



我试图使用DataFrame.to_markdown与包含我想要舍入的浮点值的数据框。没有to_markdown(),我可以设置pd.options.display.float_format,一切都很好,但to_markdown似乎不尊重这个选项。

再生产:

import pandas as pd
df = pd.DataFrame([[1, 2, 3], [42.42, 99.11234123412341234, -23]])
pd.options.display.float_format = '{:,.0f}'.format
print(df)
print()
print(df.to_markdown())

输出:

0  1   2
0  1  2   3
1 42 99 -23
|    |     0 |       1 |   2 |
|---:|------:|--------:|----:|
|  0 |  1    |  2      |   3 |
|  1 | 42.42 | 99.1123 | -23 |

(比较to_markdown表中的42.42和99.1123与普通旧df表中的42和99)

这是一个bug还是我错过了一些关于如何使用to_markdown?

看起来pandas使用了表格格式。如果已经安装,可以使用如下命令:

df.to_markdown(floatfmt=".0f")

输出:

|    |   0 |   1 |   2 |
|---:|----:|----:|----:|
|  0 |   1 |   2 |   3 |
|  1 |  42 |  99 | -23 |

最新更新