You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将DataFrame中的货币格式列转换为float浮点数值类型

解决方案

你的数据是典型的欧盟地区货币表示规则:.作为千位分隔符,,作为小数分隔符,不需要用复杂正则,直接两步字符替换后转类型即可。

假设你的DataFrame名为df,待转换的货币列名为amount,可直接使用以下代码:

import pandas as pd

# 执行转换
df['amount'] = df['amount'].str.replace('.', '', regex=False) \
                          .str.replace(',', '.', regex=False) \
                          .astype(float)

转换逻辑说明

  • 第一步删除所有千位分隔符.:比如原数值10.785,177处理后变为10785,177
  • 第二步把表示小数点的,替换为标准浮点小数点.:处理后变为10785.177
  • 最后直接转为float类型即可用于统计计算

特殊情况处理

如果列中存在空值,可先填充默认值再转换,避免报错:

df['amount'] = df['amount'].fillna('0') \
                          .str.replace('.', '', regex=False) \
                          .str.replace(',', '.', regex=False) \
                          .astype(float)

内容的提问来源于stack exchange,提问作者Davi Magalhães

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 11:30:02