Panda: come sostituire nan con none


È possibile utilizzare la seguente sintassi di base per sostituire i valori NaN con None in un DataFrame panda:

 df = df. replace (np. nan , None )

Questa funzione è particolarmente utile quando è necessario esportare un DataFrame panda in un database che utilizza None per rappresentare i valori mancanti anziché NaN .

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: sostituire NaN con Nessuno in Panda

Supponiamo di avere i seguenti panda DataFrame:

 import pandas as pd
import numpy as np

#createDataFrame
df = pd. DataFrame ({' A ': [5, 6, 8, np.nan, 4, 15, 13],
                   ' B ': [np.nan, 12, np.nan, 10, 23, 6, 4],
                   ' C ': [2, 7, 6, 3, 2, 4, np.nan],
                   ' D ': [5, np.nan, 6, 15, 1, np.nan, 4]})

#view DataFrame
print (df)

      ABCD
0 5.0 NaN 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 NaN 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0

Tieni presente che ci sono più valori NaN nel DataFrame.

Per sostituire ciascun valore NaN con None , possiamo utilizzare la seguente sintassi:

 #replace all NaN values with None
df = df. replace (np. nan , None )

#view updated DataFrame
print (df)

      ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 None
2 8.0 None 6.0 6.0
3 None 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 None
6 13.0 4.0 None 4.0

Tieni presente che ogni NaN in ciascuna colonna di DataFrame è stato sostituito con None .

Tieni presente che se desideri sostituire solo i valori NaN con None in una colonna particolare, puoi utilizzare la seguente sintassi:

 #replace NaN values with None in column 'B' only
df[' B '] = df[' B ']. replace (np. nan , None )

#view updated DataFrame
print (df)

      ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 None 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0

Tieni presente che i valori NaN sono stati modificati in Nessuno solo nella colonna “B”.

Correlato: Come sostituire i valori NaN con zero in Panda

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come sostituire valori specifici in Panda
Come filtrare un Pandas DataFrame in base ai valori delle colonne
Come riempire i valori NA per più colonne in Panda

Aggiungi un commento

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