Вы можете использовать свойство inate, которое NaN
! = NaN
, поэтому a == a
вернет False
, если a
равно NaN
Это будет работатьдаже для строк
Пример:
In[52]:
s = pd.Series([1, np.NaN, '', 1.0])
s
Out[52]:
0 1
1 NaN
2
3 1
dtype: object
for val in s:
print(val==val)
True
False
True
True
Это можно сделать векторизованным способом:
In[54]:
s==s
Out[54]:
0 True
1 False
2 True
3 True
dtype: bool
, но вы все равно можете использовать метод isnull
нався серия:
In[55]:
s.isnull()
Out[55]:
0 False
1 True
2 False
3 False
dtype: bool
ОБНОВЛЕНИЕ
Как отмечено @piRSquared, если вы сравните None==None
, это вернет True
, но pd.isnull
вернет True
поэтому в зависимости от того, хотите ли вы трактовать None
как NaN
, вы все равно можете использовать ==
для сравнения или pd.isnull
, если хотите трактовать None
как NaN