Données manquantes : ce qui peut mal tourner

Gérer les données manquantes avec des imputations en R

Michal Oleszak

Machine Learning Engineer

Ce que vous allez apprendre

À la fin de ce cours, vous saurez :

  • Expliquer pourquoi les données manquantes exigent un traitement spécifique.
  • Utiliser des tests statistiques et des visualisations pour détecter des motifs de données manquantes.
  • Imputer avec un ensemble de modèles statistiques et de Machine Learning.
  • Intégrer l'incertitude de l'imputation dans vos analyses et prédictions pour les rendre plus robustes.
Gérer les données manquantes avec des imputations en R

Prérequis

Ce cours suppose que vous êtes à l'aise avec :

  • Les manipulations de base avec dplyr et l'opérateur pipe (%>%).
  • Les modèles de régression linéaire et logistique (lm(), glm()).
  • Les notions de probabilité : variables aléatoires, distributions.
Gérer les données manquantes avec des imputations en R

Notions de base sur les données manquantes

Évidemment, la meilleure façon de traiter les données manquantes est de ne pas en avoir.

Malheureusement, elles sont partout :

  • Non-réponse dans les enquêtes.
  • Problèmes techniques des équipements de collecte.
  • Jonction de données issues de sources différentes.
  • ...

Il faut rester vigilant face aux données manquantes.

1 Orchard, T., et 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.
Gérer les données manquantes avec des imputations en R

Données 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
Gérer les données manquantes avec des imputations en R

Régression linéaire avec données incomplètes

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

Extraits 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)

Extraits 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
Gérer les données manquantes avec des imputations en R

Points clés

  • Les données manquantes sont parfois ignorées silencieusement par les logiciels statistiques.
  • Conséquence : comparer des modèles peut devenir impossible.
  • Écarter toutes les observations incomplètes peut biaiser les résultats.
  • Les données manquantes, si présentes, doivent être traitées correctement.
Gérer les données manquantes avec des imputations en R

Passons à la pratique !

Gérer les données manquantes avec des imputations en R

Preparing Video For Download...