Remplacer rating par la médiane du groupe
Dans le dernier exercice, vous avez remplacé les valeurs manquantes de la colonne rating par la médiane de la colonne. Peut-on faire mieux ? Oui ! Vous pouvez remplacer les valeurs manquantes par la médiane des notes des chocolats de la même entreprise. Allons-y !
Une fonction prédéfinie replace_missing() prend deux arguments : un DataFrame group et une colonne col. Elle tente de calculer la médiane de la colonne col et la renvoie si elle y parvient. Si le calcul de la médiane échoue, par exemple parce qu’il n’y a aucune valeur, elle renvoie une valeur prédéfinie.
Le jeu de données chocolates ainsi que les paquets DataFrames et Statistics ont été chargés pour vous.
Cet exercice fait partie du cours
Manipulation de données en Julia
Instructions
- Regroupez
chocolatesparcompanyet itérez sur le GroupedDataFrame. - Filtrez chaque groupe avec
ismissing()sur la colonnerating, en remplaçant les valeurs manquantes par la valeur renvoyée par la fonctionreplace_missing().
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Group by company and iterate
for group in ____(____)
# Subset each group using ismissing() and the rating column, assign a new value
group[____, ____] .= replace_missing(group, :rating)
end
println(describe(chocolates, :nmissing))