NHANES-Datenbereinigung
Bei der Datenbereinigung haben wir festgestellt, dass niemand unter 16 Jahren die Behandlung erhalten hat. Zur Erinnerung: Wir tun so, als sei die Variable, die angibt, ob ein Arzt jemals geraten hat, Fett oder Kalorien in der Ernährung zu reduzieren, eine gezielte Ernährungsberatung – unsere Behandlung. Lass uns nur Patientinnen und Patienten behalten, die älter als 16 Jahre sind.
Dir ist vielleicht auch aufgefallen, dass die Standardeinstellungen in ggplot2 alle Beobachtungen mit fehlender abhängiger Variable löschen – in diesem Fall das Körpergewicht. Eine Möglichkeit, mit fehlenden Gewichten umzugehen, ist Imputation und kann mit dem Paket simputation umgesetzt werden. Imputation ist eine Technik zum Umgang mit fehlenden Werten, bei der du sie entweder durch eine Kenngröße wie Mittelwert oder Median ersetzt oder ein Modell nutzt, um einen Wert vorherzusagen.
Wir verwenden impute_median(). Diese Funktion nimmt als Argumente einen Datensatz sowie die zu imputierende Variable oder eine Formel, nach der imputiert werden soll. Zum Beispiel würde impute_median(ToothGrowth, len ~ dose) alle fehlenden Werte in der Variable len mit dem Medianwert von len innerhalb der Gruppen nach dose füllen. Wenn also ein Meerschweinchen mit einer Dosis von 2,0 einen fehlenden Wert für die Variable len hat, wird dieser mit dem Median von len für jene Meerschweinchen mit dose 2,0 ersetzt.
Diese Übung ist Teil des Kurses
Versuchsplanung in R
Anleitung zur Übung
- Erstelle
nhanes_filter, indem du mitfilter()alle Personen im Datensatz behältst, die älter als 16 sind; 16-Jährige sollen nicht enthalten sein. Das Alter steht in der Variableridageyr. - Lade
simputation. Verwendeimpute_median(), um die fehlenden Beobachtungen vonbmxwtinnhanes_filterzu füllen, gruppiert nachriagendr. - Recodiere die Variable
nhanes_final$mcq365d, indem du alle Beobachtungen mit dem Wert 9 stattdessen auf 2 setzt. Überprüfe mitcount(), ob das Recoding funktioniert hat.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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` = ___)
___ %>% ___