La pulizia dei dati richiede indubbiamente molto tempo nella scienza dei dati e i dati mancanti sono una delle sfide che dovrai affrontare spesso. pandas è un prezioso strumento di manipolazione dei dati Python che ti aiuta a correggere i valori mancanti nel tuo set di dati, tra le altre cose.

È possibile correggere i dati mancanti rilasciandoli o compilandoli con altri valori. In questo articolo, spiegheremo ed esploreremo i diversi modi per riempire i dati mancanti usando i panda.

1. Usa il metodo fillna():

Il riempia() la funzione scorre il set di dati e riempie tutte le righe null con un valore specificato. Accetta alcuni argomenti facoltativi: prendi nota dei seguenti:

Valore: Questo è il valore che vuoi inserire nelle righe mancanti.

Metodo: consente di riempire i valori mancanti in avanti o all'indietro. Accetta un 'briempire' o 'riempire' parametro.

A posto: Accetta un'istruzione condizionale. Se True, modifica il DataFrame in modo permanente. Altrimenti, non è così.

Prima di iniziare, assicurati di installare Panda nel tuo Ambiente virtuale Python usando pip nel tuo terminale:

instagram viewer
pip installa i panda

Successivamente, all'interno dello script Python, creeremo un DataFrame pratico e inseriremo valori null (Nonna) in alcune righe:

importare panda
df = panda. DataFrame({'A' :[0, 3, Nessuno, 10, 3, Nessuno],
'B': [Nessuno, Nessuno, 7.13, 13.82, 7, 7],
'C': [Nessuno, "Panda", Nessuno, "Panda", "Python", "JavaScript"]})

Imparentato:Come importare dati Excel in script Python utilizzando Pandas

Ora, controlla come puoi riempire questi valori mancanti usando i vari metodi disponibili nei panda.

Questo metodo prevede la sostituzione dei valori mancanti con medie calcolate. Il riempimento dei dati mancanti con un valore medio o mediano è applicabile quando le colonne interessate hanno tipi di dati interi o float.

Puoi anche riempire i dati mancanti con il valore della modalità, che è il valore più ricorrente. Questo vale anche per numeri interi o float. Ma è più comodo quando le colonne in questione contengono stringhe.

Ecco come inserire la media e la mediana nelle righe mancanti nel DataFrame che hai creato in precedenza:

#Per inserire il valore medio di ogni colonna nelle righe mancanti:
df.fillna (df.mean().round (1), inplace=True)
#Per la mediana:
df.fillna (df.median().round (1), inplace=True)
stampa (df)

L'inserimento del valore modale come hai fatto per la media e la mediana sopra non acquisisce l'intero DataFrame. Ma puoi inserirlo in una colonna specifica invece, diciamo, colonna C:

df['C'].fillna (df['C'].mode()[0], inplace=True)

Detto questo, è ancora possibile inserire contemporaneamente il valore modale di ciascuna colonna nelle righe mancanti usando un ciclo for:

per i in df.colonne:
df[i].fillna (df[i].mode()[0], inplace=True)
stampa (df)

Se vuoi essere specifico per la colonna durante l'inserimento della media, della mediana o della modalità:

df.fillna({"A":df['A'].mean(), 
"B": df['B'].median(),
"C": df['C'].mode()[0]},
sul posto = Vero)
stampa (df)

Riempi le righe nulle con valori usando ffill

Ciò comporta la specifica del metodo di riempimento all'interno come riempia() funzione. Questo metodo riempie ogni riga mancante con il valore di quella più vicina sopra di essa.

Potresti anche chiamarlo forward-filling:

df.fillna (metodo='fill', inplace=True)

Riempi le righe mancanti con valori usando bfill

Qui sostituirai il riempire metodo sopra menzionato con briempire. Riempie ogni riga mancante nel DataFrame con il valore più vicino al di sotto di essa.

Questo è chiamato riempimento a ritroso:

df.fillna (metodo='bfill', inplace=True)

2. Il metodo replace()

Puoi sostituire il Nonna valori in una colonna specifica con la media, la mediana, la moda o qualsiasi altro valore.

Imparentato:Pandas Comandi per la manipolazione di DataFrames

Guarda come funziona sostituendo le righe nulle in una colonna denominata con la sua media, mediana o modalità:

importare panda
importare numpy #questo richiede che tu abbia precedentemente installato numpy
#Sostituisci i valori nulli con la media:
df['A'].replace([numpy.nan], df[A].mean(), inplace=True)
#Sostituisci la colonna A con la mediana:
df['B'].replace([numpy.nan], df[B].median(), inplace=True)
#Utilizza il valore modale per la colonna C:
df['C'].replace([numpy.nan], df['C'].mode()[0], inplace=True)
stampa (df)

3. Riempi i dati mancanti con interpolate()

Il interpolare() La funzione utilizza i valori esistenti in DataFrame per stimare le righe mancanti.

Esegui il codice seguente per vedere come funziona:

#Interpola all'indietro lungo la colonna:
df.interpolate (method ='linear', limit_direction ='backward', inplace=True)
#Interpola in avanti nella colonna:
df.interpolate (method ='linear', limit_direction ='forward', inplace=True)

Gestisci le righe mancanti con attenzione

Sebbene abbiamo considerato solo il riempimento dei dati mancanti con valori predefiniti come medie, modalità e altri metodi, esistono altre tecniche per correggere i valori mancanti. I data scientist, ad esempio, a volte rimuovono queste righe mancanti, a seconda dei casi.

Inoltre, è essenziale pensare in modo critico alla tua strategia prima di usarla. In caso contrario, potresti ottenere risultati di analisi o previsioni non desiderati. Alcune strategie iniziali di visualizzazione dei dati potrebbero essere d'aiuto.

Come disegnare grafici in Jupyter Notebook

Visualizza i tuoi dati con i grafici Jupyter Notebook.

Leggi Avanti

CondividereTwittaE-mail
Argomenti correlati
  • Programmazione
  • Pitone
  • Programmazione
  • Banca dati
Circa l'autore
Idowu Omisola (125 articoli pubblicati)

Idowu è appassionato di qualsiasi tecnologia e produttività intelligenti. Nel tempo libero, gioca con la programmazione e passa alla scacchiera quando è annoiato, ma ama anche staccare dalla routine di tanto in tanto. La sua passione per mostrare alle persone la via della tecnologia moderna lo motiva a scrivere di più.

Altro da Idowu Omisola

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti