ComeçarComece de graça

Imputação de valores NaN

Vamos imputar alguns valores usando o método .transform(). Na tarefa anterior, você criou um DataFrame fheroes em que todos os grupos com quantidade insuficiente de observações de bmi foram removidos. No entanto, nossa coluna bmi tem muitos valores ausentes (NaNs). Dadas duas cópias do DataFrame fheroes (imp_globmean e imp_grpmean), sua tarefa é imputar os NaNs na coluna bmi com o valor médio geral e com o valor médio por grupo definido pelos fatores Publisher e Alignment, respectivamente.

Dica: objetos Series do pandas e arrays do NumPy têm um método especial .fillna() que substitui todos os NaNs encontrados por um valor informado como argumento.

Este exercício faz parte do curso

Praticando questões de entrevista de código em Python

Ver curso

Instruções do exercício

  • Defina uma função lambda que impute valores NaN em series pela sua média.
  • Impute os NaNs na coluna bmi de imp_globmean pela média geral.
  • Impute os NaNs na coluna bmi de imp_grpmean pela média por grupo.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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())
Editar e executar o código