Ho due array NumPy, per esempio:Come filtrare una matrice numpy usando i valori di un'altra matrice?
a = [1,2,3,4,5]
e una matrice di filtro, ad esempio:
f = [False, True, False, False, True]
len(a) == len(f)
Come posso ottenere un nuovo array NumPy con solo i valori in cui lo stesso indice f
è vero? Nel mio caso: [2, 5]
.
Secondo la soluzione accettata (con valori diversi):
>>> a = numpy.array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> b = numpy.array([True, False, True, False, True, False, True, False, True, False])
>>> a[b]
array([1, 3, 5, 7, 9])
sembra che b sia una lista non una matrice, b deve essere una matrice booleana. Prova 'b = np.asarray (b, 'bool')' –