rating vervangen door groepsmediaan
In de vorige oefening verving je de missende waarden in de kolom rating door de mediaan van de kolom. Maar kan het nog beter? Jazeker! Je kunt de missende waarden vervangen door de mediaanrating van chocolades van hetzelfde bedrijf. Aan de slag!
Er is een vooraf gedefinieerde functie replace_missing() die twee argumenten accepteert: een DataFrame group en een kolom col. De functie probeert de mediaan van kolom col te berekenen en geeft die terug als dat lukt. Als het berekenen van de mediaan niet lukt, bijvoorbeeld omdat er geen waarden zijn, dan geeft de functie een vooraf gedefinieerde waarde terug.
De gegevensset chocolates en de pakketten DataFrames en Statistics zijn al voor je geladen.
Deze oefening maakt deel uit van de cursus
Data manipulatie in Julia
Oefeninstructies
- Groepeer
chocolatesopcompanyen itereer over de GroupedDataFrame. - Maak per groep een subset met
ismissing()en de kolomrating, en vervang de missende waarden door de waarde van de functiereplace_missing().
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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))