如何使用列的格式字符串显示浮动的数据帧?

我想使用print()和IPythondisplay()以给定格式显示熊猫数据帧。例如:

df=pd.DataFrame([123.4567234.5678345.6789456.7890],
索引=['foo'、'bar'、'baz'、'qux'],
列=[“成本”])
打印df
费用
foo 123.4567
巴234.5678
baz 345.6789
quux 456.7890

我想以某种方式强迫它印刷出来

成本
foo$123.46
酒吧234.57美元
巴兹345.68美元
quux$456.79

无需修改数据本身或创建副本,只需更改其显示方式即可

我该怎么做

将熊猫作为pd导入
pd.options.display.float_format='${:,.2f}'。格式
df=pd.数据帧([123.4567234.5678345.6789456.7890],
索引=['foo'、'bar'、'baz'、'qux'],
列=[“成本”])
打印(df)

屈服

成本
foo$123.46
酒吧234.57美元
巴兹345.68美元
quux$456.79

但是,只有当您希望每个浮点都使用美元符号格式化时,这才有效

否则,如果您只想为某些浮点设置美元格式,那么我认为您必须预先修改数据帧(将这些浮点转换为字符串):

将熊猫作为pd导入
df=pd.数据帧([123.4567234.5678345.6789456.7890],
索引=['foo'、'bar'、'baz'、'qux'],
列=[“成本”])
df['foo']=df['cost']
df['cost']=df['cost'].map(“${:,.2f}.”格式)
打印(df)

屈服

成本foo
foo$123.46123.4567
酒吧$234.57 234.5678
巴西元345.68 345.6789
quux$456.79 456.7890

发表评论