Comment trouver l’indice de valeur dans le tableau NumPy (avec exemples)
Vous pouvez utiliser les méthodes suivantes pour rechercher la position d’index de valeurs spécifiques dans un tableau NumPy :
Méthode 1 : Trouver toutes les positions d’indice de valeur
np.where(x==value)
Méthode 2 : Trouver la première position d’index de valeur
np.where(x==value)[0][0]
Méthode 3 : Trouver la première position d’index de plusieurs valeurs
#define values of interest vals = np.array([value1, value2, value3]) #find index location of first occurrence of each value of interest sorter = np.argsort(x) sorter[np.searchsorted(x, vals, sorter=sorter)]
Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.
Méthode 1 : Trouver toutes les positions d’indice de valeur
Le code suivant montre comment trouver chaque position d’index égale à une certaine valeur dans un tableau NumPy :
import numpy as np #define array of values x = np.array([4, 7, 7, 7, 8, 8, 8]) #find all index positions where x is equal to 8 np.where(x==8) (array([4, 5, 6]),)
À partir du résultat, nous pouvons voir que les positions d’index 4, 5 et 6 sont toutes égales à la valeur 8 .
Méthode 2 : Trouver la première position d’index de valeur
Le code suivant montre comment trouver la première position d’index égale à une certaine valeur dans un tableau NumPy :
import numpy as np #define array of values x = np.array([4, 7, 7, 7, 8, 8, 8]) #find first index position where x is equal to 8 np.where(x==8)[0][0] 4
À partir du résultat, nous pouvons voir que la valeur 8 apparaît d’abord en position d’index 4.
Méthode 3 : Trouver la première position d’index de plusieurs valeurs
Le code suivant montre comment trouver la première position d’index de plusieurs valeurs dans un tableau NumPy :
import numpy as np #define array of values x = np.array([4, 7, 7, 7, 8, 8, 8]) #define values of interest vals = np.array([4, 7, 8]) #find index location of first occurrence of each value of interest sorter = np.argsort(x) sorter[np.searchsorted(x, vals, sorter=sorter)] array([0, 1, 4])
À partir du résultat, nous pouvons voir :
- La valeur 4 apparaît d’abord à la position d’index 0.
- La valeur 7 apparaît d’abord en position d’index 1.
- La valeur 8 apparaît d’abord en position d’index 4.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans NumPy :
Comment mapper une fonction sur un tableau NumPy
Comment convertir un tableau NumPy en liste en Python
Comment calculer la magnitude d’un vecteur à l’aide de NumPy