Traitement des données manquantes par imputation dans R
Michal Oleszak
Machine Learning Engineer
Les problèmes de données manquantes se répartissent en trois catégories. Les distinguer est essentiel, car chacune exige une solution différente.
L'emplacement des valeurs manquantes dans l'ensemble de données est purement aléatoire et ne dépend d'aucune autre donnée.
Exemple :
Un capteur météo mesure la température et envoie les données à une base. Certaines entrées manquent pendant les pannes du capteur.
L'emplacement des valeurs manquantes dépend d'autres données observées.
Exemple :
Des températures manquent quand le capteur est éteint pour l'entretien. Comme l'équipe d'entretien ne travaille jamais la fin de semaine, l'emplacement des valeurs manquantes dépend du jour de la semaine.
L'emplacement des valeurs manquantes dépend des valeurs manquantes elles‑mêmes.
Exemple :
Par grand froid, le capteur gèle et cesse de fonctionner. Il n'enregistre donc pas les très basses températures. Ainsi, l'emplacement des valeurs manquantes pour la température dépend des valeurs de cette même variable.
Que se passe‑t‑il si l'on supprime les observations incomplètes ?
Exemple : test t de différence de moyennes
Petite valeur p → rejeter l'hypothèse nulle → moyennes différentes
Grande valeur p → ne pas rejeter l'hypothèse nulle → moyennes égales
But : vérifier si le pourcentage de valeurs manquantes d'une variable diffère selon les valeurs d'une autre.
Exemple : le pourcentage de valeurs manquantes dans PhysActive diffère‑t‑il entre hommes et femmes ?
Procédure de test :
PhysActive est manquante.nhanes <- nhanes %>%
mutate(missing_phys_active = is.na(PhysActive))
missing_phys_active_male <- nhanes %>%
filter(Gender == "male") %>%
pull(missing_phys_active)
missing_phys_active_female <- nhanes %>%
filter(Gender == "female") %>%
pull(missing_phys_active)
t.test(missing_phys_active_female, missing_phys_active_male)
Welch Two Sample t-test
data: missing_phys_active_female and missing_phys_active_male
t = -1.7192, df = 781.18, p-value = 0.08597
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.044414688 0.002940477
sample estimates:
mean of x mean of y
0.02083333 0.04157044
Traitement des données manquantes par imputation dans R