Comment remplacer les valeurs NaN par zéro dans NumPy



Vous pouvez utiliser la syntaxe de base suivante pour remplacer les valeurs NaN par zéro dans NumPy :

my_array[np.isnan(my_array)] = 0

Cette syntaxe fonctionne à la fois avec les matrices et les tableaux.

Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.

Exemple 1 : Remplacer les valeurs NaN par zéro dans le tableau NumPy

Le code suivant montre comment remplacer toutes les valeurs NaN par zéro dans un tableau NumPy :

import numpy as np

#create array of data
my_array = np.array([4, np.nan, 6, np.nan, 10, 11, 14, 19, 22])

#replace nan values with zero in array
my_array[np.isnan(my_array)] = 0

#view updated array
print(my_array)

[ 4.  0.  6.  0. 10. 11. 14. 19. 22.]

Notez que les deux valeurs NaN du tableau d’origine ont été remplacées par zéro.

Exemple 2 : Remplacer les valeurs NaN par zéro dans la matrice NumPy

Supposons que nous ayons la matrice NumPy suivante :

import numpy as np

#create NumPy matrix
my_matrix = np.matrix(np.array([np.nan, 4, 3, np.nan, 8, 12]).reshape((3, 2)))

#view NumPy matrix
print(my_matrix)

[[nan  4.]
 [ 3. nan]
 [ 8. 12.]]

Nous pouvons utiliser le code suivant pour remplacer toutes les valeurs NaN par zéro dans la matrice NumPy :

#replace nan values with zero in matrix
my_matrix[np.isnan(my_matrix)] = 0

#view updated array
print(my_matrix)

[[ 0.  4.]
 [ 3.  0.]
 [ 8. 12.]]

Notez que les deux valeurs NaN de la matrice d’origine ont été remplacées par zéro.

Connexe : Comment supprimer les valeurs NaN du tableau NumPy

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans NumPy :

Comment remplir un tableau NumPy avec des valeurs
Comment supprimer des éléments spécifiques du tableau NumPy
Comment remplacer des éléments dans un tableau NumPy
Comment obtenir une ligne spécifique à partir d’un tableau NumPy

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *