Aan de slagBegin gratis

Imputatie van NaN-waarden

Laten we wat waarden imputeren met de methode .transform(). In de vorige taak heb je een DataFrame fheroes gemaakt waarin alle groepen met een onvoldoende aantal bmi-waarnemingen zijn verwijderd. Onze kolom bmi bevat echter veel ontbrekende waarden (NaNs). Gegeven twee kopieën van het DataFrame fheroes (imp_globmean en imp_grpmean), is jouw taak om de NaNs in de kolom bmi te imputeren met respectievelijk de algemene gemiddelde waarde en met het gemiddelde per groep, gedefinieerd door de factoren Publisher en Alignment.

Tip: pandas Series en NumPy-arrays hebben een speciale methode .fillna() die alle aangetroffen NaNs vervangt door een waarde die je als argument meegeeft.

Deze oefening maakt deel uit van de cursus

Oefenen met coding-interviewvragen in Python

Bekijk cursus

Oefeninstructies

  • Definieer een lambda-functie die NaN-waarden in series imputeert met het gemiddelde.
  • Imputeer de NaNs in de kolom bmi van imp_globmean met de algemene gemiddelde waarde.
  • Imputeer de NaNs in de kolom bmi van imp_grpmean met het gemiddelde per groep.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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())
Code bewerken en uitvoeren