Kom igångKom igång gratis

Dödlighetstal över tid

Cynthia laddar ner de senaste dödlighetsdata för Belgien från Human Mortality Database (HMD). Datamängden är förinläst som life_table.

I den här övningen använder du två vanliga R-funktioner. with() (docs) låter dig utvärdera ett R-uttryck i en lokal miljö byggd från en dataram. Det gör att du slipper skriva life_table$ upprepade gånger för att hämta kolumner. Till exempel kan de logaritmerade dödlighetstalen för 18-åringar över åren hämtas med:

with(life_table, log(qx[age == 18]))

with() är särskilt praktisk i kombination med subset() (docs). Till exempel kan det logaritmerade dödlighetstalet för 18-åringar från livstabellen för år 1999 hämtas med:

with(subset(life_table, year == 1999), log(qx[age == 18]))

Den här övningen är en del av kursen

Värdering av livförsäkringsprodukter i R

Visa kurs

Övningsinstruktioner

  • Utforska life_table. Skriv ut de första 6 raderna med head() och beräkna range() (docs) för variabeln year.
  • Komplettera koden med korrekt användning av subset()life_table så att dödlighetstalen för en 18-årig kvinna över åren visas i ett diagram.
  • Använd subset() igen för att välja livstabellen för 1950 och plotta dödlighetskurvan för det året.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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])))))
Redigera och kör kod