ComeçarComece de graça

Amostrando da distribuição condicional

Chamar predict() em um modelo sempre retorna o mesmo valor para os mesmos valores dos preditores. Isso resulta em pouca variabilidade nos dados imputados. Para aumentá-la, de modo que a imputação replique a variabilidade dos dados originais, podemos amostrar da distribuição condicional. Isso significa que, em vez de sempre prever 1 quando o modelo retorna uma probabilidade maior que 0,5, podemos sortear a previsão de uma distribuição binomial descrita pela probabilidade retornada pelo modelo.

Você vai trabalhar no código que escreveu no exercício anterior. A seguinte linha foi removida:

  preds <- ifelse(preds >= 0.5, 1, 0)

Sua tarefa é preencher esse lugar amostrando de uma distribuição binomial. É apenas uma linha de código!

Este exercício faz parte do curso

Tratamento de Dados Ausentes com Imputações em R

Ver curso

Instruções do exercício

  • Sobrescreva preds amostrando de uma distribuição binomial.
  • Passe o comprimento de preds como primeiro argumento.
  • Defina size como 1.
  • Defina prob como as probabilidades retornadas pelo modelo.

Exercício interativo prático

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

 impute_logreg <- function(df, formula) {
  # Extract name of response variable
  imp_var <- as.character(formula[2])
  # Save locations where the response is missing
  missing_imp_var <- is.na(df[imp_var])
  # Fit logistic regression mode
  logreg_model <- glm(formula, data = df, family = binomial)
  # Predict the response
  preds <- predict(logreg_model, type = "response")
  # Sample the predictions from binomial distribution
  preds <- ___(___, size = ___, prob = ___)
  # Impute missing values with predictions
  df[missing_imp_var, imp_var] <- preds[missing_imp_var]
  return(df)
}
Editar e executar o código