使用
np.where来获得,其中一个给定的条件是指数
True。
例子:
对于
np.ndarray称为的2D
a:
i, j = np.where(a == value) # when comparing arrays of integersi, j = np.where(np.isclose(a, value)) # when comparing floating-point arrays
对于一维数组:
i, = np.where(a == value) # integersi, = np.where(np.isclose(a, value)) # floating-point
请注意,这也适用于像条件
>=,
<=,
!=等等…
您也可以
np.ndarray使用
index()方法创建的子类:
class myarray(np.ndarray): def __new__(cls, *args, **kwargs): return np.array(*args, **kwargs).view(myarray) def index(self, value): return np.where(self == value)
测试:
a = myarray([1,2,3,4,4,4,5,6,4,4,4])a.index(4)#(array([ 3, 4, 5, 8, 9, 10]),)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)