Sterblichkeitsraten im Zeitverlauf
Cynthia lädt die aktuellsten Sterblichkeitsdaten für Belgien aus der Human Mortality Database (HMD) herunter. Dieser Datensatz ist als life_table vorab geladen.
In dieser Übung verwendest du zwei gängige R-Funktionen. with() (Doku) ermöglicht es dir, einen R-Ausdruck in einer lokalen Umgebung aus einem Data Frame auszuwerten. So musst du nicht ständig life_table$ tippen, um Spalten zu extrahieren. Zum Beispiel kannst du die logarithmierten Sterblichkeitsraten von 18-Jährigen über die Jahre so ausgeben:
with(life_table, log(qx[age == 18]))
with() ist besonders praktisch in Kombination mit subset() (Doku). Die logarithmierte Sterblichkeitsrate von 18-Jährigen aus der Lebenstafel des Jahres 1999 erhältst du zum Beispiel so:
with(subset(life_table, year == 1999), log(qx[age == 18]))
Diese Übung ist Teil des Kurses
<Kurs>Bewertung von Lebensversicherungsprodukten in R</Kurs>Übungsanweisungen
- Erkunde
life_table. Gib die ersten 6 Zeilen mithead()aus und berechne denrange()(Doku) der Variableyear. - Vervollständige den Code mit einer passenden Verwendung von
subset()auflife_table, sodass die Sterblichkeitsraten einer 18-jährigen Frau über die Jahre geplottet werden. - Verwende erneut
subset(), um die Lebenstafel von 1950 auszuwählen, und plotte die Kurve der Sterblichkeitsrate in diesem Jahr.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Explore life_table
___
___
# Plot the logarithm of the female mortality rates for (18) by year
with(___(___, ___),
plot(year, log(qx),
type = "l", main = "Log mortality rates (Belgium, females, 18-year-old)",
xlab = "Year t", ylab = expression(paste("Log mortality rate ", log(q[18])))))
# Plot the logarithm of the female mortality rates in the year 1950 by age
with(___(___, ___),
plot(age, log(qx),
type = "l", main = "Log mortality rates (Belgium, females, 1950)",
xlab = "Age x", ylab = expression(paste("Log mortality rate ", log(q[x])))))