НачатьНачать бесплатно

Заполнение пропущенных значений NaN

Попробуем заполнить пропущенные значения с помощью метода .transform(). В предыдущем задании вы создали DataFrame fheroes, из которого были удалены все группы с недостаточным количеством наблюдений bmi. Однако в столбце bmi по-прежнему много пропущенных значений (NaN). Используя две копии DataFrame fheroes (imp_globmean и imp_grpmean), заполните пропуски NaN в столбце bmi: в первом случае — общим средним значением, во втором — средним значением по группам, определённым факторами Publisher и Alignment.

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

Это упражнение является частью курса

Практика задач для собеседования по программированию на Python

Посмотреть курс

Инструкции к упражнению

  • Определите лямбда-функцию, которая заполняет значения NaN в series её средним значением.
  • Заполните пропуски NaN в столбце bmi DataFrame imp_globmean общим средним значением.
  • Заполните пропуски NaN в столбце bmi DataFrame 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())
Редактировать и запускать код