Dados ausentes: o que pode dar errado

Tratamento de Dados Ausentes com Imputações em R

Michal Oleszak

Machine Learning Engineer

O que você vai aprender

Ao concluir este curso, você será capaz de:

  • Entender por que dados ausentes exigem tratamento especial.
  • Usar testes estatísticos e visualizações para detectar padrões em dados ausentes.
  • Fazer imputação com um conjunto de modelos estatísticos e de Machine Learning.
  • Incorporar a incerteza da imputação nas análises e previsões, tornando-as mais robustas.
Tratamento de Dados Ausentes com Imputações em R

Pré-requisitos

O curso pressupõe que você está à vontade com:

  • Manipulações básicas de dados com dplyr e o operador pipe (%>%).
  • Modelos de regressão linear e logística (lm(), glm()).
  • Conceitos básicos de probabilidade: variáveis aleatórias e distribuições.
Tratamento de Dados Ausentes com Imputações em R

Introdução a dados ausentes

Obviamente, a melhor forma de lidar com dados ausentes é não tê-los.

Infelizmente, dados ausentes estão em todo lugar:

  • Não respostas em pesquisas.
  • Problemas técnicos em equipamentos de coleta.
  • Junção de dados de fontes diferentes.
  • ...

É preciso ficar atento a dados ausentes.

1 Orchard, T., e M. A. Woodbury. 1972. "A Missing Information Principle: Theory and Applications." In Proceedings of the Sixth Berkeley Symposium on Mathematical Statistics and Probability, 1:697–715.
Tratamento de Dados Ausentes com Imputações em R

Dados do NHANES

head(nhanes, 3)
  Age Gender Weight Height Diabetes TotChol Pulse PhysActive
1  16   male   73.2  172.0    FALSE    3.00    76       TRUE
2  17   male   72.3  176.0    FALSE    2.61    74       TRUE
3  12   male   57.7  158.9    FALSE    4.27    80       TRUE
nhanes %>% is.na() %>% colSums()
Age     Gender     Weight     Height   Diabetes    TotChol    Pulse   PhysActive 
0       0          9          8        1            85        32      26
Tratamento de Dados Ausentes com Imputações em R

Regressão linear com dados incompletos

model_1 <- lm(Diabetes ~ Age + Weight, 
              data = nhanes)

Trechos de summary(model_1):

Residual standard error: 0.08571 on 804 
degrees of freedom (10 observations 
deleted due to missingness)

Adjusted R-squared:  0.005706 
F-statistic: 3.313 on 2 and 804 DF,  
p-value: 0.03691
model_2 <- lm(Diabetes ~ Age + Weight +
              TotChol, data = nhanes)

Trechos de summary(model_2):

Residual standard error: 0.08264 on 718 
degrees of freedom (95 observations
deleted due to missingness)

Adjusted R-squared:  0.008422 
F-statistic: 3.041 on 3 and 718 DF,
p-value: 0.02834
Tratamento de Dados Ausentes com Imputações em R

Principais pontos

  • Às vezes, softwares estatísticos ignoram dados ausentes silenciosamente.
  • Como resultado, pode ser impossível comparar modelos.
  • Simplesmente remover observações incompletas pode gerar viés.
  • Dados ausentes, quando existem, precisam ser tratados adequadamente.
Tratamento de Dados Ausentes com Imputações em R

Vamos praticar!

Tratamento de Dados Ausentes com Imputações em R

Preparing Video For Download...