解析存储为文本的数字,逗号为十进制,点为数千

时间:2019-06-05 18:05:50

标签: python pandas number-formatting

我有一个要导入的Excel文件,其中的熊猫存储为文本。需要说明的是,此文本是法语/拉丁语约定的小数(基数)和数千的数字,因此,通过让熊猫推断其类型,它会带来一个文本列,就像在原始文件中显示的一样:

           NUMBER
0   23.639.826,11
1       92.275,00
2    1.917.000,00
8        2.409,02
9       13.501,00
Name: NUMBER, dtype: object

如何使熊猫将文本转换为正确的浮点格式,而不必在Excel文件本身上进行转换或应用字符串方法替换逗号和点?

           NUMBER
0     23639826.11
1        92275.00
2      1917000.00
8         2409.02
9        13501.00

我尝试使用thousands='.'参数,但根据docs的建议使用pd.read_excel读取文件时无济于事,并且使用pd.to_numeric输出ValueError因为它无法解析字符串。

1 个答案:

答案 0 :(得分:2)

尝试df=pd.read_excel(filename, decimal=',', thousands='.')