Come sostituire i valori nan con zero in numpy


È possibile utilizzare la seguente sintassi di base per sostituire i valori NaN con zero in NumPy:

 my_array[np. isnan (my_array)] = 0

Questa sintassi funziona sia con matrici che con array.

Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.

Esempio 1: sostituisci i valori NaN con zero nell’array NumPy

Il codice seguente mostra come sostituire tutti i valori NaN con zero in un array 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.]

Si noti che entrambi i valori NaN nella tabella originale sono stati sostituiti con zero.

Esempio 2: sostituisci i valori NaN con zero nella matrice NumPy

Supponiamo di avere la seguente matrice NumPy:

 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)

[[nah 4.]
 [ 3. nah]
 [8.12.]]

Possiamo usare il seguente codice per sostituire tutti i valori NaN con zero nella matrice NumPy:

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

#view updated array
print (my_matrix)

[[ 0. 4.]
 [ 30.]
 [8.12.]]

Si noti che entrambi i valori NaN della matrice originale sono stati sostituiti con zero.

Correlati: come rimuovere i valori NaN dall’array NumPy

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in NumPy:

Come riempire un array NumPy con valori
Come rimuovere elementi specifici dall’array NumPy
Come sostituire gli elementi in un array NumPy
Come ottenere una riga specifica da un array NumPy

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *