如何使用Pandas在数据列的数值前添加美元符号?
给数据列添加美元符号的解决方案
你的代码问题出在索引上——df.loc["Price"]是按行标签选取行,而Price是列名,所以得改成列的选取方式。
给你几个可行的方案:
- 修正你原来的写法,map方法的思路是对的,只需调整列的选取方式:
df["Price"] = "$" + df["Price"].map("{:,.0f}".format)
- 用lambda配合apply实现,写法更简洁直观:
df["Price"] = df["Price"].apply(lambda x: f"${x:.0f}")
- 如果只是想在展示时添加美元符号,不想修改原始数据的数值类型(保持Price列为数值型),可以使用pandas的style格式化功能(要求pandas版本1.3.0及以上):
# 用于Jupyter Notebook或类似环境中展示 display(df.style.format({"Price": "${:.0f}"}))
以上方法都能帮你得到期望的带美元符号的Price列结果。
内容的提问来源于stack exchange,提问作者Lynn
相关产品推荐
相关产品推荐

