La scienza dei dati in genere comporta dati mancanti. L'intera riga può essere scartata o un valore può essere aggiunto alla combinazione di riga colonna. Far cadere la riga/colonna sarebbe assurdo perché elimina una certa metrica per ogni riga. NAN, che sta per "non un numero", è uno dei modi tipici per mostrare un valore che manca da un insieme di dati. Per ottenere i risultati previsti, gestire NAN è abbastanza importante. Scopriamo come modificare i valori NAN in una riga o colonna di un frame di dati Panda su 0.
Metodo 1: usando Fillna ()
I valori Na/NAN sono riempiti con l'approccio fornito utilizzando la funzione "Fillna ()". Può essere utilizzato considerando la seguente sintassi:
Se si desidera riempire i valori NAN per una singola colonna, la sintassi è la seguente:
panda.Dataframe_obj ['colonna'].Fillna (0)
Se si desidera riempire i valori NAN in tutto il frame dati, la sintassi è la seguente:
panda.Dataframe_obj.Fillna (0)
Esempio 1: colonna singola
Creiamo un frame di dati denominato "documenti" con due colonne che includono alcuni valori NAN. Li creiamo usando numpy. Ora, riempiamo i valori NAN con 0 in entrambe le colonne, separatamente.
Panda di importazione
importa numpy
# Considera il frame dati
documenti = panda.DataFrame ('Color': ["Red", "Blue", Numpy.nan, numpy.nan, numpy.nan],
'dimensione': [numpy.NAN, 45,60,78, Numpy.nan])
Stampa (documenti ", \ n")
# Riempi Nan con 0 nella colonna di dimensioni.
Stampa (documenti ['size'].Fillna (0), "\ n")
# Riempi Nan con 0 nella colonna di colore.
Stampa (documenti ['Color'].Fillna (0))
Produzione:
Dimensione del colore
0 Red Nan
1 blu 45.0
2 NAN 60.0
3 NAN 78.0
4 nan nan
0 0.0
1 45.0
2 60.0
3 78.0
4 0.0
Nome: dimensioni, dtype: float64
0 rosso
1 blu
2 0
3 0
4 0
Nome: Color, Dtype: Object
Spiegazione:
Innanzitutto, riempiamo i valori NAN con 0 nella colonna "Size". Quindi, riempiamo i valori NAN con 0 nella colonna "Colore".
Esempio 2: più colonne
Riempiamo i valori NAN con 0 in tutto il frame dati.
Panda di importazione
importa numpy
# Considera il frame dati
documenti = panda.DataFrame ('Color': ["Red", "Blue", Numpy.nan, numpy.nan, numpy.nan],
'dimensione': [numpy.NAN, 45,60,78, Numpy.nan])
# Riempi Nan con 0 in tutto il telaio
Stampa (documenti.Fillna (0))
Produzione:
Dimensione del colore
0 rosso 0.0
1 blu 45.0
2 0 60.0
3 0 78.0
4 0 0.0
Spiegazione:
Innanzitutto, riempiamo i valori NAN con 0 nell'intero frame dati. Ora, non ci sono valori NAN nel frame dati "documenti".
Metodo 2: utilizzando sostituti ()
Per sostituire una singola colonna di valori NAN, la sintassi fornita è la seguente:
Dobbiamo passare i valori NAN che devono essere sostituiti con 0 come primo parametro e 0 come secondo parametro che sostituisce i valori NAN:
panda.Dataframe_obj ['colonna'].Sostituire (numpy.nan, 0)
Considerando che, per sostituire i valori NAN dell'intero telaio, utilizziamo la seguente sintassi:
panda.Dataframe_obj.Sostituire (numpy.nan, 0)
Esempio 1: colonna singola
Creiamo un frame dati chiamato "ordini" con tre colonne che include alcuni valori NAN. Li creiamo usando numpy. Ora, sostituiamo i valori NAN con 0 nelle colonne "prezzo" e "prodotto", separatamente.
Panda di importazione
importa numpy
# Considera il frame dati
ordini = panda.DataFrame ('Product': ["One", "Two", Numpy.nan, numpy.nan, numpy.nan],
'Price': [Numpy.NAN, 45,60,78, Numpy.nan],
'id': [1,2,3,4,5])
stampa (ordini ", \ n")
# Sostituisci NAN con 0 nella colonna dei prezzi.
Stampa (ordini ['Price'].Sostituire (numpy.nan, 0), "\ n")
# Sostituisci NAN con 0 nella colonna del prodotto.
Stampa (ordini ['Prodotto'].Sostituire (numpy.nan, 0))
Produzione:
ID prezzo del prodotto
0 un nan 1
1 Due 45.0 2
2 NAN 60.0 3
3 NAN 78.0 4
4 NAN NAN 5
0 0.0
1 45.0
2 60.0
3 78.0
4 0.0
Nome: Prezzo, DType: Float64
0 uno
1 due
2 0
3 0
4 0
Nome: Prodotto, DType: Oggetto
Spiegazione:
Ci sono tre valori nella colonna "prezzo" e due valori nella colonna "prodotto". Innanzitutto, sostituiamo i valori NAN con 0 nella colonna "prezzo". Quindi, sostituiamo i valori NAN con 0 nella colonna "Prodotto".
Esempio 2: più colonne
Creiamo un frame dati chiamato "ordini" con tre colonne che include alcuni valori NAN. Li creiamo usando numpy. Ora, sostituiamo i valori NAN con 0 nelle colonne "prezzo" e "prodotto", separatamente.
Panda di importazione
importa numpy
# Considera il frame dati
documenti = panda.DataFrame ('Color': ["Red", "Blue", Numpy.nan, numpy.nan, numpy.nan],
'dimensione': [numpy.NAN, 45,60,78, Numpy.nan])
# Sostituisci NAN con 0 in tutto il frame dati
Stampa (documenti.Sostituire (numpy.nan, 0), "\ n")
Produzione:
Dimensione del colore
0 rosso 0.0
1 blu 45.0
2 0 60.0
3 0 78.0
4 0 0.0
Ci sono cinque valori NAN nel frame dati "ordini". Successivamente, sostituiamo i valori NAN con 0.
Conclusione
Affrontare le voci mancanti in un telaio di dati è un requisito fondamentale e necessario per ridurre la complessità e gestire i dati in modo provvisorio nel processo di analisi dei dati. Pandas ci fornisce alcune opzioni per far fronte a questo problema. Abbiamo portato due utili strategie in questa guida.