NHANES-gegevens opschonen
Tijdens het opschonen van de gegevens ontdekten we dat niemand onder de 16 jaar de behandeling kreeg. Denk eraan dat we doen alsof de variabele die aangeeft of een arts ooit heeft geadviseerd om vet of calorieën in het dieet te verminderen, doelgerichte voedingsbegeleiding is: onze behandeling. Laten we alleen patiënten in de gegevensset houden die ouder zijn dan 16 jaar.
Je hebt misschien ook gemerkt dat de standaardinstellingen in ggplot2 alle observaties verwijderen met een ontbrekende afhankelijke variabele, in dit geval lichaamsgewicht. Een optie om met de ontbrekende gewichten om te gaan, imputatie, kun je uitvoeren met het simputation-pakket. Imputatie is een techniek om met ontbrekende waarden om te gaan, waarbij je ze vervangt door een samenvattende statistiek, zoals het gemiddelde of de mediaan, of een model gebruikt om een te gebruiken waarde te voorspellen.
We gebruiken impute_median(), dat een gegevensset en de te imputeren variabele of formule om op te groeperen als argumenten neemt. Bijvoorbeeld, impute_median(ToothGrowth, len ~ dose) vult alle ontbrekende waarden in de variabele len in met de mediaanwaarde voor len per dose. Dus als een cavia die een dosis van 2,0 kreeg een ontbrekende waarde had voor de variabele len, dan zou die worden ingevuld met de mediaan van len voor die cavia’s met een dose van 2,0.
Deze oefening maakt deel uit van de cursus
Experimenteel ontwerp in R
Oefeninstructies
- Maak
nhanes_filterdoor metfilter()alleen personen ouder dan 16 in de gegevensset te houden, dus zonder degenen die 16 zijn. Leeftijd staat in de variabeleridageyr. - Laad
simputation. Gebruikimpute_median()om de ontbrekende observaties vanbmxwtinnhanes_filterin te vullen, gegroepeerd opriagendr. - Recodeer de variabele
nhanes_final$mcq365ddoor alle observaties met de waarde 9 te vervangen door 2. Controleer of het recoden gelukt is metcount().
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Filter to keep only those 16+
nhanes_filter <- ___ %>% filter(___)
# Load simputation & impute bmxwt by riagendr
___
nhanes_final <- impute_median(___, ___)
# Recode mcq365d with recode() & examine with count()
nhanes_final$mcq365d <- recode(nhanes_final$mcq365d,
`1` = 1,
`2` = 2,
`9` = ___)
___ %>% ___