Lebenserwartungen nach Alter visualisieren
Cynthia möchte die Lebenserwartung als Funktion des Alters darstellen. Kannst du ihr zeigen, wie sie so einen Grafen erstellt?
Um das in R effizient zu tun, solltest du zuerst eine Funktion schreiben, die die abgekürzte Lebenserwartung (curtate life expectancy) für ein gegebenes Alter und eine gegebene Sterbetafel berechnet. Danach kannst du diese Funktion über alle Alter in der Sterbetafel anwenden. Mit sapply() (docs) wird die Ausgabe auf die einfachstmögliche Datenstruktur reduziert.
Das vorab geladene Objekt life_table enthält die Periodensterbetafel 1999 für Frauen in Belgien.
Diese Übung ist Teil des Kurses
<Kurs>Bewertung von Lebensversicherungsprodukten in R</Kurs>Übungsanweisungen
- Vervollständige den Code zur Definition der Funktion
curtate_future_lifetime(). - Erstelle einen Vektor
ages, indem du die Spalteageauslife_tableextrahierst. - Verwende
sapply()mit den Argumentenages,curtate_future_lifetimeundlife_table, um die abgekürzte Lebenserwartung für alle Alter in der Sterbetafel zu berechnen. - Plotte
future_lifetimesgegenages.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Function to compute the curtate expected future lifetime for a given age and life table
curtate_future_lifetime <- function(age, life_table) {
px <- ___
kpx <- ___(px[(___):length(px)])
___(___)
}
# Vector of ages
ages <- ___
# Curtate future lifetimes for all ages
future_lifetimes <- ___(___, ___, ___)
# Future lifetime by age
plot(___, ___, type = 'l', lwd = 2, col = "green", xlab = "Age x", ylab = "Future lifetime", main = "Future lifetime by age")