AttributeError: у объекта 'str' нет атрибута 'rint' - Как заменить или игнорировать текст в числовом столбце - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь добавить вычисленные столбцы числа в файл CSV. Однако столбцы содержат некоторый текст в виде строки (которого там быть не должно), поэтому при попытке запустить код я получаю AttributeError. Любой шанс, что кто-то знает, как удалить все строки в столбце чисел (то есть превратить столбец строк в число с плавающей точкой). В противном случае я попытался игнорировать ошибку, но кроме функции не помогает.

import pandas as pd

try:
    df = pd.read_csv('test.csv')        
    df['new_numbers_column'] = (df['numbers_column']+2)
    df.to_csv('test.csv', index=False)
except AttributeError:
    pass

1 Ответ

0 голосов
/ 11 сентября 2018

Использовать errors параметр:

df = pd.DataFrame({'B':['a',7, 8], 'C':[7,8,9]})

df.apply(pd.to_numeric, errors='coerce')

Выход:

     B  C
0  NaN  7
1  7.0  8
2  8.0  9

Примечание: Pandas преобразует любой столбец числового dtype со значением NaN в значение с плавающей точкой.

...