Transformation des Données
La transformation des données est une étape cruciale dans la préparation des données brutes pour l'analyse. Elle consiste à modifier, ajouter ou recoder des variables afin de rendre les données plus pertinentes et prêtes pour l'analyse.
Création de nouvelles colonnes
Une transformation courante consiste à calculer de nouveaux indicateurs à partir des colonnes existantes. Par exemple, il peut être pertinent de calculer le prix par kilomètre pour évaluer la rentabilité d'un véhicule.
Base R
Il est possible de créer une nouvelle colonne en utilisant l'opérateur $
pour définir son nom et en lui attribuant des valeurs.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
De nouvelles colonnes peuvent être ajoutées à l'aide de la fonction mutate()
. À l'intérieur de mutate()
, il faut spécifier le nom de la nouvelle colonne et définir son mode de calcul.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Conversion et transformation de données numériques sous forme textuelle
Dans les ensembles de données réels, les informations numériques sont souvent stockées sous forme de texte combiné à des caractères non numériques. Par exemple, les valeurs de puissance moteur peuvent apparaître sous la forme "68 bhp", qui doivent être nettoyées et converties avant l'analyse.
Base R
La fonction gsub()
permet de supprimer le texte indésirable, puis as.numeric()
convertit le résultat en valeurs numériques. Après conversion, des transformations supplémentaires peuvent être effectuées, comme la conversion de brake horsepower (bhp) en kilowatts.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
Le même processus peut être simplifié à l'intérieur d'un appel à mutate()
. Il est possible de combiner le remplacement de texte, la conversion de type et la création d'une nouvelle colonne en une seule étape, ce qui rend le code plus clair et plus facile à lire.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Catégorisation des données
De nouvelles variables catégorielles peuvent être créées en regroupant des valeurs continues en catégories significatives. Par exemple, les voitures peuvent être classées dans les gammes de prix Faible, Moyenne ou Élevée en fonction de leur prix de vente.
Base R
Cela peut être réalisé avec des instructions ifelse()
imbriquées. Chaque condition est vérifiée dans l'ordre et la valeur est attribuée en conséquence.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Vous pouvez utiliser la fonction case_when()
comme alternative aux instructions if-else imbriquées. Cela permet d'écrire plusieurs conditions dans un format clair et lisible.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
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
Can you explain the difference between using Base R and dplyr for data transformation?
How do I handle non-numeric values when converting columns for analysis?
Can you show more examples of categorizing data using different criteria?
Awesome!
Completion rate improved to 4
Transformation des Données
Glissez pour afficher le menu
La transformation des données est une étape cruciale dans la préparation des données brutes pour l'analyse. Elle consiste à modifier, ajouter ou recoder des variables afin de rendre les données plus pertinentes et prêtes pour l'analyse.
Création de nouvelles colonnes
Une transformation courante consiste à calculer de nouveaux indicateurs à partir des colonnes existantes. Par exemple, il peut être pertinent de calculer le prix par kilomètre pour évaluer la rentabilité d'un véhicule.
Base R
Il est possible de créer une nouvelle colonne en utilisant l'opérateur $
pour définir son nom et en lui attribuant des valeurs.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
De nouvelles colonnes peuvent être ajoutées à l'aide de la fonction mutate()
. À l'intérieur de mutate()
, il faut spécifier le nom de la nouvelle colonne et définir son mode de calcul.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Conversion et transformation de données numériques sous forme textuelle
Dans les ensembles de données réels, les informations numériques sont souvent stockées sous forme de texte combiné à des caractères non numériques. Par exemple, les valeurs de puissance moteur peuvent apparaître sous la forme "68 bhp", qui doivent être nettoyées et converties avant l'analyse.
Base R
La fonction gsub()
permet de supprimer le texte indésirable, puis as.numeric()
convertit le résultat en valeurs numériques. Après conversion, des transformations supplémentaires peuvent être effectuées, comme la conversion de brake horsepower (bhp) en kilowatts.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
Le même processus peut être simplifié à l'intérieur d'un appel à mutate()
. Il est possible de combiner le remplacement de texte, la conversion de type et la création d'une nouvelle colonne en une seule étape, ce qui rend le code plus clair et plus facile à lire.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Catégorisation des données
De nouvelles variables catégorielles peuvent être créées en regroupant des valeurs continues en catégories significatives. Par exemple, les voitures peuvent être classées dans les gammes de prix Faible, Moyenne ou Élevée en fonction de leur prix de vente.
Base R
Cela peut être réalisé avec des instructions ifelse()
imbriquées. Chaque condition est vérifiée dans l'ordre et la valeur est attribuée en conséquence.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Vous pouvez utiliser la fonction case_when()
comme alternative aux instructions if-else imbriquées. Cela permet d'écrire plusieurs conditions dans un format clair et lisible.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
Merci pour vos commentaires !