Calcolare le percentuali di valori mancanti
L’automazione è il futuro della data science. Automatizzare alcune parti della preparazione dei dati ripaga sempre. In questo esercizio automatizzeremo l’eliminazione delle colonne quando i dati mancanti superano una soglia specifica.
Questo esercizio fa parte del corso
Feature Engineering con PySpark
Istruzioni dell'esercizio
- Definisci una funzione
column_dropper()che accetta i parametridf, un dataframe, ethreshold, un float tra 0 e 1. - Calcola la percentuale di valori mancanti usando
where(),isNull()ecount() - Verifica se la percentuale di mancanti è superiore alla soglia; in tal caso, elimina la colonna usando
drop() - Esegui
column_dropper()sudfcon la soglia impostata a .6
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
def column_dropper(df, threshold):
# Takes a dataframe and threshold for missing values. Returns a dataframe.
total_records = df.____()
for col in df.columns:
# Calculate the percentage of missing values
missing = df.____(df[col].____()).____()
missing_percent = ____ / ____
# Drop column if percent of missing is more than threshold
if ____ > ____:
df = df.____(col)
return df
# Drop columns that are more than 60% missing
df = ____(____, ____)