---
# System prepended metadata

title: 'Hausaufgaben, 4. Woche'
tags: [Vl Datenanalyse 21/22]

---

# Hausaufgaben, 4. Woche
###### tags: `Vl Datenanalyse 21/22`

## Vorbemerkung

Ich habe diese Aufgaben so gestaltet, dass Sie hier nochmals das üben können, was wir schon in der Hausaufgabe zur 2. Woche besprochen haben.

Außerdem habe ich inzwischen eine Musterlösung zur Hausaufgabe der 2. Woche erstellt, und im Moodle unter "2. Woche" eingestellt. Sehen Sie sich diese Musterlösung an (oder sehen Sie sich noch mal die Aufzeichnung zur 2. Übung an), bevor Sie die Aufgaben hier probieren.

## Aufgabe 1: Body-Mass Index und Alter

Laden Sie nochmals die Tabelle mit den NHANES-Daten, die wir bereits vorher verwendet haben.

Fügen Sie der Tabelle eine Spalte `bmi` hinzu, die den Body-Mass-Index (BMI) des Probanden / der Probandin angibt. Zur Erinnerung: Der BMI berechnet sich als 

BMI = (Gewicht in kg) / (Größe in m)$^2$

Plotten Sie dann den BMI gegen das Lebensalter.

Zur Orientierung: Hier ist mein Plot:

![](https://i.imgur.com/i28FPDe.png)

Wenn Sie Schwierigkeiten haben, sehen Sie sich nochmals die Besprechung von Aufgabe 1 bei den Hausaufgabe zur 2. Woche an.

Zwei Hinweise, um den Plot schöner zu machen:

- Sie werden ein Problem bemerken: Da das Lebensalter in der Tabelle nur in ganzen Jahren angegeben ist, bilden sich im Plot viele dünne Streifen, eioner für jedes Jahr, in denen viele Punkte übereinander geplotted sind, so dass man schwer erkennen kann, wie viele Punkt es sind. Dieses häufige Problem nennt man "Overplotting". Ich habe daher in meinem Plot statt `geom_point` die Variante `geom_jitter` verwendet, bei der man durch Angabe von `width=0.5` erreicht, dass jeder Punkt zufällig um ein kleines bisschen verschoben wird, damit die Punkte nicht genau aufeinander liegen. Die Angabe `width` gibt dabei an, um wie viele EInheiten maximal in x-Richtung verschoben werden soll und `height` um wie viele in y-Richtung (hier: `height=0`).

- Außerdem habe ich die Punkte etwas kleiner als normal und leicht durchscheinend ("alpha transparancy") gemacht.

Interpretieren Sie den Plot.
- Wie hängt die Verteilung der BMI-Werte vom Lebensalter ab?
- Die WHO schlägt vor, Personen mit BMI < 18,5 als untergewichtig, mit einem BMI > 25 als übergewichtig. Ab einem BMI > 30 gilt das Übergewicht als Krankheit ("Adipositas"). Wie sieht es mit der Volksgesundheit in den USA aus?
- Woran liegt die auffällige Häufung von Punkten beim Alter von 80 Jahren. SUchen Sie, um diese Frage zu beantworten, im Web die Dokumentation zu den Daten zu NHANES-Studie und schlagen Sie nach, wie im Codebuch für NHANES 2017/18, Kapitel "Demographic Data", die Tabellen-Spalte "Age in Years at Screening" beschrieben ist.

## Aufgabe 2: Body-Mass Index nach Geschlecht und Ethnie

Entfernen Sie aus der Tabelle alle Probanden mit Alter unter 18, und all bei denen der BMI fehlt (also als `NA` eingetragen ist, weil Körpergröße oder Gewicht `NA` waren).

Erzeugen Sie dann ein Histogramm der BMI-Werte, aufgeschlüsselt nach Ethnie und Geschlecht. Es sollte in etwa so aussehen:

![](https://i.imgur.com/uYvq0TQ.png)

Wie Sie sehen, habe ich vertikale Hilfs-Linien eingezogen, um die WHO-Grenzen kenntlich zu machen.

## Aufgabe 3: Mittelwert und Median des BMI

Berechnen Sie nun, wieder aufgeschlüsselt nach Ethnie und Geschlecht, den Mittelwert und den Median des BMI über alle erwachsenen Studienteilnehmer.

Warum ist der Mittelwert stets größer als der Median?

## Aufgabe 4: Anteil Adipöser an der Bevölkerung

Berechnen Sie den Anteil adipöser Probanden (d.h., BMI>30) unter allen erwachsenen Studienteilnehmer, aufgeschlüsselt nach Ethnie und Geschlecht. 

Hinweis hierzu: Fügen Sie zunächst der Tabelle eine Spalte hinzu, die als boolscher Vektor die Frage nach Adipositas beantwortet. In der Spalte sollte also `TRUE` stehen, wenn der `BMI` über 30 liegt und FALSE, wenn er unter 30 liegt. Nun können Sie in einem späteren `summerize` diese boolsche Spalte mit `sum` aufaddieren. Dabei wird R jedes `TRUE` als 1 und jedes `FALSE` als 0 werten, und `sum` wird Ihnen somit die Anzahl der TRUEs, also die Anzahl der Adipösen wieder geben. Erinnern Sie sich auch daran, dass Sie`n()` in einem `summerize` verwenden können, um die Anzahl der Zeilen in der jeweiligen Gruppe zu bestimmen.

Versuchen Sie, Ihr Ergebnis in einem Plot darzustellen. Er könnte z.B. so aussehen:
![](https://i.imgur.com/eO7ghfO.png)

Für diesen Plot habe ich `geom_col` benutzt, mit dem Zusatz `position="dodge"`. Mit etwas Probieren oder Googeln finden Sie vielleicht heraus, wo der Unterschied zwischen `geom_col` und `geom_histogram` liegt (und warum hier nur ersteres funktioniert), und was `position="dodge"` bewirkt.