Разбор чисел, хранящихся в виде текста с запятой в виде десятичной дроби и в виде тысячи - PullRequest
1 голос
/ 05 июня 2019

У меня есть файл Excel для импорта с пандами, столбцы которых хранятся в виде текста. Предостережение заключается в том, что в соответствии с французским / латинским соглашением этот текст является десятичным (radix) и тысячным числом, так что, позволяя пандам определять его тип, он приводит текстовый столбец так же, как он представлен в исходном файле:

           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='.' при чтении файла с pd.read_excel, как это предлагается документами , но безрезультатно, и использование pd.to_numeric выводит ValueError, так как он не может проанализировать строка.

1 Ответ

2 голосов
/ 05 июня 2019

Попробуйте df=pd.read_excel(filename, decimal=',', thousands='.')

...