numpy.where的奇怪行为,无值

时间:2015-01-30 09:26:33

标签: python arrays numpy

我对numpy.where命令的None值的行为感到困惑 - 它似乎没有返回正确的索引 没有和"不是没有"值:

>>> import numpy as np
>>> a = np.array([None, 1])

#  The following works as expected
>>> a[0]==None
True
>>> a[0]!=None
False
>>> np.where(a)
(array([1]),)

# What's going on here? None of the output seems correct here
>>> np.where(a != None)
(array([0]),)
>>> np.where(a == None)
(array([], dtype=int32),)

这是故意还是错误?如何使用numpy.where查找等于None的索引?

我知道this这个问题,讨论了使用蒙面数组将numpy与具有NoneType值的数组一起使用,但我的问题是关于numpy.where。

Python:2.7 Numpy:1.6.1

0 个答案:

没有答案