Что делать с ошибкой "не удалось преобразовать строку в число с плавающей запятой" - PullRequest
0 голосов
/ 06 августа 2020

Этот вопрос задавали здесь несколько раз, я проверил большинство из них, но не мог понять, как с ним бороться. Я прочитал файл CSV и пытаюсь преобразовать его значения в float следующим образом:

testdataframe = pd.read_csv(r'H:\myCSVfile.csv')
testdataset = testdataframe.values
testdataset = testdataset.astype('float32')

Я получаю эту ошибку: ValueError: не удалось преобразовать строку в float: '2020-08-05 22:45: 00 '

вот testdataframe:

array([['2020-08-05 22:45:00', 5.670524],   
   ['2020-08-05 23:00:00', 5.6840434],  
   ['2020-08-05 23:15:00', 5.6911097],  
   ['2020-08-05 23:30:00', 5.6869917],  
   ['2020-08-05 23:45:00', 5.6786237],  
   ['2020-08-06 00:00:00', 5.6710806]], dtype=object

Заранее спасибо за вашу помощь.

1 Ответ

1 голос
/ 06 августа 2020

Как @ John Gordon правильно упомянул, что это строка даты / времени. Вы должны применить astype(float) к столбцам numeri c. Однако, если вы все еще хотите применить то же самое, здесь идет лог c, чтобы игнорировать «ошибки»

df=pd.DataFrame({"A":[1.2,'1.2','a'],"B":['2020-10-2 10:00:00','2020-10-2 11:00:00','2020-10-2 12:00:00']})
df.astype(float, errors='ignore')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...