ПочатиПочніть безкоштовно

Імпутація значень NaN

Спробуймо виконати імпутацію значень за допомогою методу .transform(). У попередньому завданні ви створили датафрейм fheroes, де всі групи з недостатньою кількістю спостережень bmi були видалені. У нашому стовпці bmi однак чимало пропусків (NaN). Маючи дві копії датафрейма fheroes (imp_globmean та imp_grpmean), ваше завдання — заповнити NaN у стовпці bmi загальним середнім значенням і, відповідно, середнім значенням у межах груп, визначених факторами Publisher та Alignment.

Порада: обʼєкти pandas Series і масиви NumPy мають спеціальний метод .fillna(), який замінює всі наявні NaN значенням, переданим як аргумент.

Ця вправа є частиною курсу

Практика співбесід із програмування на Python

Переглянути курс

Інструкції до вправи

  • Визначте функцію lambda, що замінює значення NaN у series на її середнє.
  • Заповніть NaN у стовпці bmi датафрейма imp_globmean загальним середнім значенням.
  • Заповніть NaN у стовпці bmi датафрейма imp_grpmean середнім значенням у межах груп.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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())
Редагувати та запускати код