Chybějící data: co může jít špatně

Práce s chybějícími daty pomocí imputace v R

Michal Oleszak

Machine Learning Engineer

Co se naučíte

Po absolvování tohoto kurzu budete umět:

  • Pochopit, proč chybějící data vyžadují zvláštní zacházení.
  • Pomocí statistických testů a vizualizací odhalit vzory v chybějících datech.
  • Provádět imputaci pomocí statistických modelů a modelů strojového učení.
  • Začlenit nejistotu z imputace do analýz a predikcí, čímž je učiníte robustnějšími.
Práce s chybějícími daty pomocí imputace v R

Předpoklady

Kurz předpokládá znalost následujících témat:

  • Základní manipulace s daty pomocí dplyr a operátoru roury (%>%).
  • Modely lineární a logistické regrese (lm(), glm()).
  • Základní pojmy pravděpodobnosti: náhodné veličiny, rozdělení.
Práce s chybějícími daty pomocí imputace v R

Úvod do chybějících dat

Nejlepší způsob, jak zacházet s chybějícími daty, je nemít je.

Chybějící data jsou však všude:

  • Neodpovídající respondenti v průzkumech.
  • Technické problémy se zařízeními pro sběr dat.
  • Spojování dat z různých zdrojů.
  • ...

Musíme být pozorní vůči chybějícím datům.

1 Orchard, T., and 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.
Práce s chybějícími daty pomocí imputace v R

Data 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
Práce s chybějícími daty pomocí imputace v R

Lineární regrese s neúplnými daty

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

Části 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)

Části 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
Práce s chybějícími daty pomocí imputace v R

Klíčové závěry

  • Statistický software někdy tiše ignoruje chybějící data.
  • Výsledkem může být nemožnost porovnávat různé modely.
  • Pouhé odstranění neúplných pozorování může vést ke zkresleným výsledkům.
  • Chybějící data je nutné vhodně ošetřit.
Práce s chybějícími daty pomocí imputace v R

Pojďme procvičovat!

Práce s chybějícími daty pomocí imputace v R

Preparing Video For Download...