¿Existe un mecanismo Numpy eficiente para recuperar los índices enteros de ubicaciones en una matriz basada en una condición que es verdadera en oposición a la matriz de máscara booleana?Cómo convertir una matriz booleana en matriz de índice en numpy
Por ejemplo:
x=np.array([range(100,1,-1)])
#generate a mask to find all values that are a power of 2
mask=x&(x-1)==0
#This will tell me those values
print x[mask]
En este caso, me gustaría saber los índices de i
mask
donde mask[i]==True
. ¿Es posible generar estos sin bucle?
O similarmente si siempre tiene matrices unidimensionales: 'numpy.flatnonzero (mask)' – christianbrodbeck