Kom igångKom igång gratis

Imputering av NaN-värden

Nu ska vi imputera några värden med hjälp av metoden .transform(). I föregående uppgift skapade du en DataFrame fheroes där alla grupper med otillräckligt antal bmi-observationer togs bort. Kolumnen bmi innehåller dock många saknade värden (NaN). Givet två kopior av DataFrame:n fheroes (imp_globmean och imp_grpmean) är din uppgift att imputera NaN-värdena i kolumnen bmi med det totala medelvärdet respektive medelvärdet per grupp definierad av faktorerna Publisher och Alignment.

Tips: pandas Series och NumPy-arrayer har en speciell metod .fillna() som ersätter alla förekommande NaN-värden med ett värde som anges som argument.

Den här övningen är en del av kursen

Öva på kodningsintervjufrågor i Python

Visa kurs

Övningsinstruktioner

  • Definiera en lambda-funktion som imputerar NaN-värden i series med dess medelvärde.
  • Imputera NaN-värden i kolumnen bmi i imp_globmean med det totala medelvärdet.
  • Imputera NaN-värden i kolumnen bmi i imp_grpmean med medelvärdet per grupp.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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())
Redigera och kör kod