Tracer l’espérance de vie par âge
Cynthia décide de visualiser l’espérance de vie en fonction de l’âge. Pouvez-vous guider Cynthia pour construire un tel graphique ?
Pour le faire efficacement en R, vous devez d’abord écrire une fonction qui calcule l’espérance de vie contractée pour un âge et une table de mortalité donnés. Ensuite, vous pourrez appliquer cette fonction à tous les âges de la table. Avec sapply() (docs), la sortie est simplifiée vers la structure de données la plus élémentaire possible.
L’objet life_table préchargé contient la table de mortalité de période 1999 pour les femmes en Belgique.
Cet exercice fait partie du cours
Évaluation des produits d’assurance vie en R
Instructions
- Complétez le code qui définit la fonction
curtate_future_lifetime(). - Créez un vecteur
agesen extrayant la colonneagedelife_table. - Utilisez
sapply()avec les argumentsages,curtate_future_lifetimeetlife_tablepour calculer l’espérance de vie contractée à tous les âges de la table. - Tracez
future_lifetimesen fonction deages.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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")