Comment supprimer des éléments spécifiques du tableau NumPy
Vous pouvez utiliser les méthodes suivantes pour supprimer des éléments spécifiques d’un tableau NumPy :
Méthode 1 : supprimer les éléments égaux à une valeur spécifique
#remove elements whose value is equal to 12
new_array = np.delete(original_array, np.where(original_array == 12))
Méthode 2 : supprimer les éléments égaux à une certaine valeur dans la liste
#remove elements whose value is equal to 2, 5, or 12
new_array = np.setdiff1d(original_array, [2, 5, 12])
Méthode 3 : supprimer des éléments en fonction de la position de l’index
#remove elements in index positions 0 and 6
new_array = np.delete(original_array, [0, 6])
Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.
Exemple 1 : Supprimer les éléments égaux à une valeur spécifique
Le code suivant montre comment supprimer tous les éléments d’un tableau NumPy dont la valeur est égale à 12 :
import numpy as np
#define original array of values
original_array = np.array([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements whose value is equal to 12
new_array = np.delete(original_array, np.where(original_array == 12))
#view new array
print(new_array)
[1 2 2 4 5 7 9]
Notez que les deux éléments du tableau qui étaient égaux à 12 ont été supprimés.
Exemple 2 : supprimer les éléments égaux à une certaine valeur dans la liste
Le code suivant montre comment supprimer tous les éléments d’un tableau NumPy dont les valeurs sont égales à 2, 5 ou 12 :
import numpy as np
#define original array of values
original_array = np.array([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements whose value is equal to 2, 5, or 12
new_array = np.setdiff1d(original_array, [2, 5, 12])
#view new array
print(new_array)
[1 4 7 9]
Notez que tous les éléments dont la valeur était 2, 5 ou 12 ont été supprimés.
Exemple 3 : Supprimer des éléments en fonction de la position de l’index
Le code suivant montre comment supprimer les éléments aux positions d’index 0 et 6 d’un tableau NumPy :
import numpy as np
#define original array of values
original_array = np.array([1, 2, 2, 4, 5, 7, 9, 12, 12])
#remove elements in index positions 0 and 6
new_array = np.delete(original_array, [0, 6])
#view new array
print(new_array)
[ 2 2 4 5 7 12 12]
Notez que les éléments en position d’index 0 (avec la valeur de 1) et en position d’index 6 (avec la valeur de 9) ont tous deux été supprimés du tableau NumPy.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :
Comment remplir un tableau NumPy avec des valeurs
Comment remplacer des éléments dans un tableau NumPy
Comment obtenir une ligne spécifique à partir d’un tableau NumPy