我试过np.where
但没有成功:
>>>a = np.array([np.nan, 1])
>>>np.where(a == np.nan)
(array([], dtype=int64),)
答案 0 :(得分:1)
您需要更改
np.where(a == np.nan)
到
np.where(np.isnan(a))
NaN值在等式检查中始终返回false,即使是另一个NaN值也是如此。因此,您需要使用特殊函数来检查NaN,如np.isnan。
答案 1 :(得分:0)
import numpy as np
x = np.array([0,0,-1,1,np.nan, 0, 1, np.nan])
print np.where(np.isnan(x))
返回:
(array([4, 7]),)