Как убрать \ xa3 из всех чисел в столбце? - PullRequest
0 голосов
/ 10 июня 2018

У меня есть столбец данных, который считывается из файла CSV с использованием pd.read_csv.Когда я смотрю на числа, они все выглядят так:

df['Amount'][0]
Out[4]: '\xa3128.23'

То есть они имеют \xa3, к которым они предварительно добавлены, и поэтому также не интерпретируются как числа с плавающей запятой.

Как я могу лишить\xa3 и заставить их плавать?

Ответы [ 2 ]

0 голосов
/ 10 июня 2018

Как @jezrael и я обсуждали его ответ, может быть, лучше обработать кодирование при импорте пандами, а не зацикливать результат.Это связано с тем, что дополнительные циклы плохо масштабируются с большими наборами данных и могут привести к некоторому медленному времени выполнения.

 pd.read_csv("your_data_set_path", encoding='utf-8') #use appropriate encoding.
0 голосов
/ 10 июня 2018

Я думаю, нужно replace:

df['Amount'].str.replace('\xa3', '').astype(float)

Или lstrip по £:

df['Amount'].str.lstrip('£').astype(float)

Как@csevier указал, что, кажется, проблема с кодировкой, решение:

df = pd.read_csv("your_data_set_path", encoding='utf-8') 

А затем:

df['Amount'] = df['Amount'].str.lstrip('£').astype(float)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...