Valori mancanti
Fa parte della sezione Dati e grafici del percorso Machine Learning di Coddy. Lezione 45 di 60.
I dati reali presentano lacune: un sensore si guasta, uno studente salta un quiz. pandas contrassegna ogni cella vuota con NaN, «non è un numero»:
La maggior parte dei modelli rifiuta NaN, quindi conta prima i valori mancanti. .isna() contrassegna ciascuno come True, e .sum() li conta:
scores = pd.DataFrame({
"name": ["Ana", "Ben", "Cy", "Dee"],
"quiz1": [8, np.nan, 7, 9], # np.nan is a gap
"quiz2": [6, 5, np.nan, np.nan],
})
print(scores.isna().sum())Questo stampa:
name 0
quiz1 1
quiz2 2
dtype: int64Poi scegli: dropna() elimina ogni riga con un valore mancante; fillna(0) inserisce 0 in ciascuna. Entrambi restituiscono una nuova tabella, quindi salvala.
Le statistiche ignorano NaN: la media di quiz1 è 8.0, calcolata sui suoi tre punteggi noti.
Sfida
MedioA un tracker fitness sono mancate alcune letture in tracker.csv. Prima di allenarti, osserva come ciascun metodo di gestione dei dati mancanti modifica la media di sleep. Il codice iniziale legge hours, un valore da usare per riempire i dati mancanti.
- Stampa il numero di dati mancanti in ogni colonna.
- Stampa la media di sleep, arrotondata a 2 decimali, in tre modi: ignorando i dati mancanti, considerando i giorni senza dati mancanti in nessuna colonna e riempiendo i dati mancanti con
hours.
Per un altro tracker e 8:
day 0
steps 1
sleep 2
water 0
dtype: int64
Skipping gaps: 6.9
Complete days only: 7.0
Gaps filled with 8.0: 7.21Provalo tu
import pandas as pd
tracker = pd.read_csv("tracker.csv")
hours = float(input())
# Scrivi il tuo codice qui sotto
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Dati e grafici
4Modellare i dati
Rimodellare gli arrayUnire gli arrayNumeri casualiRipasso: simulazione del lancio dei dadi2Array NumPy
Creazione di arrayForma e dimensioneIntervalli di numeriIndicizzazione e slicingRiepilogo: griglia delle temperature5Grafici a linee e a dispersione
Etichette e titoliGrafici a dispersionePiù linee e legendeColori e marcatoriFigure e assiRiepilogo: passi settimanali8Filtraggio e ordinamento
Selezionare le righeFiltrare le righeOrdinare i valoriNuove colonneRiepilogo: i prodotti migliori3Matematica con gli array
Operazioni matematiche su interi arrayStatistiche riassuntiveStatistiche per asseBroadcastingMaschere booleaneRiepilogo: voti d'esame6Grafici per i dati
Grafici a barreIstogrammiPiù grafici in unoImmagini come arrayRiepilogo: rapporto sulle precipitazioni9Raggruppamento e pulizia
Conteggio dei valoriRaggruppare i datiDiversi riepiloghiValori mancantiRiepilogo: risultati del sondaggioEsercitati da solo: Compilatore Python online