Inizia subitoInizia gratis

Imputazione dei valori NaN

Proviamo a imputare alcuni valori usando il metodo .transform(). Nel compito precedente hai creato un DataFrame fheroes in cui sono stati rimossi tutti i gruppi con un numero insufficiente di osservazioni bmi. Tuttavia, la nostra colonna bmi contiene molti valori mancanti (NaN). Date due copie del DataFrame fheroes (imp_globmean e imp_grpmean), il tuo compito è imputare i NaN nella colonna bmi rispettivamente con la media complessiva e con la media per gruppo definito dai fattori Publisher e Alignment.

Suggerimento: le Series di pandas e gli array NumPy hanno un metodo speciale .fillna() che sostituisce tutti i NaN incontrati con un valore passato come argomento.

Questo esercizio fa parte del corso

Esercitarsi con le domande di colloquio di coding in Python

Visualizza corso

Istruzioni dell'esercizio

  • Definisci una funzione lambda che imputa i valori NaN in series con la sua media.
  • Imputa i NaN nella colonna bmi di imp_globmean con la media complessiva.
  • Imputa i NaN nella colonna bmi di imp_grpmean con la media per gruppo.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Define a lambda function that imputes NaN values in series
impute = lambda series: ____

# Impute NaNs in the bmi column of imp_globmean
imp_globmean['bmi'] = ____
print("Global mean = " + str(fheroes['bmi'].mean()) + "\n")

groups = imp_grpmean.groupby(['Publisher', 'Alignment'])

# Impute NaNs in the bmi column of imp_grpmean
imp_grpmean['bmi'] = groups[____].____
print(groups['bmi'].mean())
Modifica ed esegui il codice