Trova il primo indice dell'elemento in NumPy Array

Manav Narula 10 agosto 2021
  1. Usa la funzione where() per trovare il primo indice di un elemento in un array NumPy
  2. Usa la funzione nonzero() per trovare il primo indice di un elemento in un array NumPy
  3. Usa la funzione argmax() per trovare il primo indice di un elemento in un array NumPy
  4. Usa la funzione index() per trovare il primo indice di un elemento in un array NumPy
Trova il primo indice dell'elemento in NumPy Array

In questo tutorial, discuteremo come trovare il primo indice di un elemento in un array numpy.

Usa la funzione where() per trovare il primo indice di un elemento in un array NumPy

La funzione where() del modulo numpy è usata per restituire un array che contiene gli indici degli elementi che soddisfano alcune condizioni. La condizione è specificata all’interno della funzione.

Possiamo usarlo per trovare il primo indice di un valore specifico in un array, come mostrato di seguito.

a = np.array([7, 8, 9, 5, 2, 1, 5, 6, 1])

print(np.where(a == 1)[0][0])

Produzione:

5

Usa la funzione nonzero() per trovare il primo indice di un elemento in un array NumPy

La funzione nonzero() restituisce gli indici di tutti gli elementi diversi da zero in un array numpy. Restituisce tuple di più array per un array multidimensionale.

Simile alla funzione where(), possiamo specificare la condizione anche in modo che possa anche restituire la posizione di un elemento specifico.

Per esempio,

a = np.array([7, 8, 9, 5, 2, 1, 5, 6, 1])

print(np.nonzero(a == 1)[0][0])

Produzione:

5

Per gli scopi più elementari, le funzioni where() e nonzero() sembrano simili. La differenza sorge con la funzione where() quando si desidera selezionare elementi dall’array a se una condizione è True e dall’array b quando quella condizione è False.

Usa la funzione argmax() per trovare il primo indice di un elemento in un array NumPy

argmax() trova l’indice dell’elemento massimo in un array. Possiamo specificare la condizione di uguaglianza nella funzione e trovare anche l’indice dell’elemento richiesto.

Per esempio,

a = np.array([7, 8, 9, 5, 2, 1, 5, 6, 1])

print(np.argmax(a == 1))

Produzione:

5

Usa la funzione index() per trovare il primo indice di un elemento in un array NumPy

In questo metodo, convertiremo prima l’array in una lista usando la funzione tolist(). Quindi useremo la funzione index(), che restituirà la posizione dell’elemento specificato.

Il codice seguente implementa questo.

a = np.array([7, 8, 9, 5, 2, 1, 5, 6, 1])

print(a.tolist().index(1))

Produzione:

5
Autore: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn