Панды: Notnull () или Notna () не понижают значение Nan - PullRequest
0 голосов
/ 04 ноября 2019

У меня есть фрейм данных, который содержит два столбца (как показано на рисунке). enter image description here

Я пытаюсь удалить Нан из одной из колонок (т.е. FACILITYID). Я пытался использовать следующие команды для удаления NaN

temp = temp[temp['FACILITYID'].notnull()]
temp = temp[temp['FACILITYID'].notna()]
temp = temp[~temp['FACILITYID'].isnull()]
temp = temp[~temp['FACILITYID'].isna()]
temp = temp[temp['FACILITYID']!='']

Однако ни одна из них не удаляет NaN. Я следовал инструкции существующего потока ( Nan не выпадает в Python ), но не повезло. Кто-нибудь может указать, где я совершаю ошибку?

1 Ответ

1 голос
/ 04 ноября 2019

Скорее всего, элементы, напечатанные как NaN , содержат только строку , состоящую из этих 3 букв. Возможно, все остальные значения в этом столбце также являются строками (не числами).

Если бы это было "реальным" NaN , то столбец был бы приведен к float (потому что NaN является частным случаем float ), и все числовые значения должны заканчиваться на " .0 ".

Для проверкитип каждого столбца:

temp.info()

Распечатка будет содержать строку, касающуюся каждой строки (имя, число ненулевых значений и тип). Внимание для столбца string тип печатается как object .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...