Почему следующие 2 'if' структуры отличаются на Python? - PullRequest
0 голосов
/ 07 марта 2020

Я хотел просмотреть кадр данных на Python и заменить значения NaN в указанном столбце c. Я хотел бы понять, в чем разница между этими двумя?

if pd.isnull(coly):

if coly == np.NaN:

Первое утверждение работает, второе даже не генерирует ошибку.

1 Ответ

2 голосов
/ 07 марта 2020
  1. coly == np.NaN всегда ложно. NaN никогда не бывает равным самому себе.
  2. Существует много разных значений nans (например, - numpy .nan).

Чтобы обнаружить nan, вы должны использовать numpy.isnan или другую специальную функцию nan-Detection (которая просматривает двоичную структуру значения).

...