Skip to main content
 首页 » 编程设计

python之Pandas read_csv 在解析数字时忽略美元符号

2025年05月04日13rubylouvre

我有一个 csv 文件,其中一些单元格带有美元符号(例如 $46.5)。我在函数 pandas.read_csv() 中强制所有类型为 numpy.float64。它提示 ValueError: could not convert string to float: $46.5。有没有办法干净利落地处理这个问题?

请您参考如下方法:

您可以为相关列添加转换器:

pd.DataFrame({'col1': ['$46.51', '$38.00', 40],  
              'col2': [1, 2, 3]}).to_csv('test_df.csv', index=False) 
 
>>> pd.read_csv('test_df.csv', converters={'col1': lambda s: float(s.replace('$', ''))}) 
    col1  col2 
0  46.51     1 
1  38.00     2 
2  40.00     3