Gestion des Données Manquantes
Les données manquantes constituent un problème courant dans les ensembles de données réels. Elles peuvent affecter la précision de l'analyse et conduire à des résultats trompeurs si elles ne sont pas correctement traitées.
Détection des valeurs manquantes
La première étape consiste à vérifier où et dans quelle mesure les données sont manquantes dans l'ensemble de données.
is.na(df) # returns a logical matrix of TRUE/FALSE
sum(is.na(df)) # total number of missing values
colSums(is.na(df)) # missing values per column
Cela permet d'obtenir une vue claire des colonnes contenant des données manquantes et de la gravité du problème.
Suppression des valeurs manquantes
Parfois, la méthode la plus simple pour traiter les données manquantes consiste à supprimer les lignes contenant des valeurs NA
. Cela garantit la propreté de l'ensemble de données, mais peut également entraîner une perte de données importante si de nombreuses lignes sont concernées.
Base R
La fonction na.omit()
supprime toutes les lignes contenant des valeurs manquantes du jeu de données.
df_clean <- na.omit(df)
sum(is.na(df_clean))
dplyr
La même tâche peut être réalisée à l'aide de la fonction drop_na()
.
df_clean <- df %>%
drop_na()
Cette méthode est simple et efficace lorsque la quantité de données manquantes est faible, mais elle peut ne pas être idéale si de nombreuses lignes sont supprimées lors du processus.
Remplacement des valeurs manquantes
Au lieu de supprimer des lignes, une approche plus efficace est l'imputation, où les valeurs manquantes sont remplacées par des estimations pertinentes. Cela permet de préserver la taille du jeu de données tout en réduisant les biais. Une stratégie courante pour les variables numériques consiste à remplacer les valeurs manquantes par la moyenne de la colonne.
Base R
Utilisation de l’indexation logique avec is.na()
pour identifier les valeurs manquantes et leur attribuer la moyenne de la colonne.
df$selling_price[is.na(df$selling_price)] <- mean(df$selling_price, na.rm = TRUE)
dplyr
Gestion de l’imputation à l’aide de ifelse()
dans mutate()
.
df <- df %>%
mutate(selling_price = ifelse(is.na(selling_price),
mean(selling_price, na.rm = TRUE),
selling_price))
Remplissage des valeurs manquantes dans les colonnes catégorielles
Pour les variables catégorielles (colonnes de type caractère ou facteur), les valeurs manquantes sont souvent remplacées par un indicateur fixe tel que "Unknown"
.
Base R
df$fuel[is.na(df$fuel)] <- "Unknown"
dplyr
La fonction replace_na()
offre une méthode plus claire pour remplir les valeurs manquantes.
df <- df %>%
mutate(fuel = replace_na(fuel, "Unknown"))
Cette approche garantit un traitement cohérent des valeurs manquantes et assure que la colonne reste valide pour l’analyse ou la modélisation.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 4
Gestion des Données Manquantes
Glissez pour afficher le menu
Les données manquantes constituent un problème courant dans les ensembles de données réels. Elles peuvent affecter la précision de l'analyse et conduire à des résultats trompeurs si elles ne sont pas correctement traitées.
Détection des valeurs manquantes
La première étape consiste à vérifier où et dans quelle mesure les données sont manquantes dans l'ensemble de données.
is.na(df) # returns a logical matrix of TRUE/FALSE
sum(is.na(df)) # total number of missing values
colSums(is.na(df)) # missing values per column
Cela permet d'obtenir une vue claire des colonnes contenant des données manquantes et de la gravité du problème.
Suppression des valeurs manquantes
Parfois, la méthode la plus simple pour traiter les données manquantes consiste à supprimer les lignes contenant des valeurs NA
. Cela garantit la propreté de l'ensemble de données, mais peut également entraîner une perte de données importante si de nombreuses lignes sont concernées.
Base R
La fonction na.omit()
supprime toutes les lignes contenant des valeurs manquantes du jeu de données.
df_clean <- na.omit(df)
sum(is.na(df_clean))
dplyr
La même tâche peut être réalisée à l'aide de la fonction drop_na()
.
df_clean <- df %>%
drop_na()
Cette méthode est simple et efficace lorsque la quantité de données manquantes est faible, mais elle peut ne pas être idéale si de nombreuses lignes sont supprimées lors du processus.
Remplacement des valeurs manquantes
Au lieu de supprimer des lignes, une approche plus efficace est l'imputation, où les valeurs manquantes sont remplacées par des estimations pertinentes. Cela permet de préserver la taille du jeu de données tout en réduisant les biais. Une stratégie courante pour les variables numériques consiste à remplacer les valeurs manquantes par la moyenne de la colonne.
Base R
Utilisation de l’indexation logique avec is.na()
pour identifier les valeurs manquantes et leur attribuer la moyenne de la colonne.
df$selling_price[is.na(df$selling_price)] <- mean(df$selling_price, na.rm = TRUE)
dplyr
Gestion de l’imputation à l’aide de ifelse()
dans mutate()
.
df <- df %>%
mutate(selling_price = ifelse(is.na(selling_price),
mean(selling_price, na.rm = TRUE),
selling_price))
Remplissage des valeurs manquantes dans les colonnes catégorielles
Pour les variables catégorielles (colonnes de type caractère ou facteur), les valeurs manquantes sont souvent remplacées par un indicateur fixe tel que "Unknown"
.
Base R
df$fuel[is.na(df$fuel)] <- "Unknown"
dplyr
La fonction replace_na()
offre une méthode plus claire pour remplir les valeurs manquantes.
df <- df %>%
mutate(fuel = replace_na(fuel, "Unknown"))
Cette approche garantit un traitement cohérent des valeurs manquantes et assure que la colonne reste valide pour l’analyse ou la modélisation.
Merci pour vos commentaires !