International Mortality Tables Overview"

knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)
required <- c("tidyverse", "MortalityLaws", "reshape2")
if (!all(sapply(required, 
                function(pkg) requireNamespace(pkg, quietly = TRUE)))) {
  message(paste("This vignette needs the followig packages:\n\t", 
                paste(required, collapse = " "), 
                "\nSince not all are installed, code will not be executed: "))
  knitr::opts_chunk$set(eval = FALSE)
}
library(tidyverse, quietly = TRUE)
library(MortalityTables)
mortalityTables.load("Austria_Census")

Austria

Annuities

Annuity tables in Austria are traditionally published by the Actuarial Association of Austria (AVÖ).

ÖVM 59/61 - RR 67

[TODO: Get actual table data and publication]

mortalityTables.load("Austria_Annuities_RR67")
plotMortalityTables(RR67, mort.AT.census.1961.male)

EROM/F 85 (Period table 2020), EROM/F G 1950 (Cohort table with age shift)

mortalityTables.load("Austria_Annuities_EROMF")
EROM85.male
EROF85.female

EROM.G1950.male
EROM.G1950.male.av
EROF.G1950.female
EROF.G1950.female.av

AVÖ 1996-R

mortalityTables.load("Austria_Annuities_AVOe1996R")
AVOe1996R
AVOe1996R.male
AVOe1996R.male.av325
AVOe1996R.male.group
AVOe1996R.female
AVOe1996R.female.av325
AVOe1996R.female.group

AVÖ 2005-R

mortalityTables.load("Austria_Annuities_AVOe2005R")
AVOe2005R
AVOe2005R.male
AVOe2005R.male.group
AVOe2005R.male.av
AVOe2005R.male.group.av
AVOe2005R.male.unloaded
AVOe2005R.male.nodamping
AVOe2005R.male.nodamping.group
AVOe2005R.male.nodamping.unloaded

AVOe2005R.female
AVOe2005R.female.group
AVOe2005R.female.av
AVOe2005R.female.group.av
AVOe2005R.female.unloaded
AVOe2005R.female.nodamping
AVOe2005R.female.nodamping.group
AVOe2005R.female.nodamping.unloaded

AVOe2005R.unisex
AVOe2005R.unisex.group
AVOe2005R.unisex.av
AVOe2005R.unisex.group.av
AVOe2005R.unisex.nodamping
AVOe2005R.unisex.nodamping.group

Comparisons

plotMortalityTables(RR67, EROM85.male, EROF85.female, EROM.G1950.male.av, EROF.G1950.female.av, AVOe1996R[, "Einzel"], AVOe2005R[c("m", "w"), "Einzel","loaded"],
                    aes = aes(color = year), Period = 2020, title = "Austrian Annuity Tables, Period 2020", 
                    legend.position = "right"
) + facet_grid(sex ~ .)

plotMortalityTables(RR67, EROM85.male, EROF85.female, EROM.G1950.male.av, EROF.G1950.female.av, AVOe1996R[, "Einzel"],AVOe2005R[c("m", "w"), "Einzel","loaded"],
                    aes = aes(color = year), YOB = 1965, title = "Austrian Annuity Tables, Cohort 1965", 
                    legend.position = "right"
) + facet_grid(sex ~ .)

Population Mortality (Austrian Census tables)

Census tables

mortalityTables.load("Austria_Census")
mort.AT.census

Official population forecast (by Statistik Austria)

mortalityTables.load("Austria_PopulationForecast")
mort.AT.forecast
mortalityTables.load("Austria_PopulationObserved")

Markov-Chain-Monte-Carlo-fitted population forecast (by J. Hirz)

mortalityTables.load("Austria_PopulationMCMC")
mort.AT.MCMC

Observed population mortalities 1947--2022 (by Statistik Austria)

mortalityTables.load("Austria_PopulationObserved")
mort.AT.observed.male
mort.AT.observed.female
mort.AT.observed.unisex

Comparison

plotMortalityTables(
  mort.AT.census[c("m", "w"),],

  aes = aes(color = table),
  legend.position = "right", legend.key.width = unit(2, "lines"),
  title = "Comparison of Austrian Census Mortalities"
) + labs(color = NULL) + facet_grid(sex ~ .)
plotMortalityTables(
  mort.AT.census[c("m", "w"),"2011"],
  mort.AT.forecast %>% mT.setDimInfo(table = "Official forecast"),
  mort.AT.MCMC[c("m", "w")] %>% mT.setDimInfo(table = "MCMC forecast"),

  YOB = 1980,
  aes = aes(color = table),
  legend.position = "right", legend.key.width = unit(2, "lines"),
  title = "Projected Austrian Population Mortalities, YOB 1980"

) + labs(color = NULL) + facet_grid(sex ~ .)
plotMortalityTables(
  mort.AT.observed.male,
  mort.AT.observed.female,
  mort.AT.observed.unisex,

  YOB = 1940,
  aes = aes(color = sex),
  legend.position = "right", legend.key.width = unit(2, "lines"),
  title = "Historic Austrian Population Mortalities (yearly raw observations), YOB 1940"
)

Occupational Pensions

Ettl-Pagler

# pensionTables.load("Austria_EttlPagler")
# EttlPagler.male
# EttlPagler.female

AVÖ 1999-P - Rechnungsgrundlagen für die Pensionsversicherung - Pagler-Pagler

# pensionTables.load("Austria_AVOe1999P")
# AVOe1999P

AVÖ 2008-P - Rechnungsgrundlagen für die Pensionsversicherung - Pagler-Pagler

# pensionTables.load("Austria_AVOe2008P")
# AVOe2008P

AVÖ 2018-P - Rechnungsgrundlagen für die Pensionsversicherung

# pensionTables.load("Austria_AVOe2018P")
# AVOe2018P

Experience Tables

Gesamtbestand (total portfolio) of life insurance companies 2012--16

mortalityTables.load("Austria_VUGesamtbestand_2012-16")
VU.Gesamtbestand
VU.Gesamtbestand.Storno
VU.Gesamtbestand.Detail
plotMortalityTables(VU.Gesamtbestand, legend.position = c(0.01, 0.99), legend.justification = c(0,1), title = "Austrian insurance portfolio moratlities 2012-16")

Source: G. Friesacher, Th. Spanninger, R. Kainhofer: Gesamtbestandstafel -- Lebensversicherungsbestand in Österreich von 2012 bis 2016, Arbeitskreis Rechnungsgrundlagen, Aktuarvereinigung Österreichs (AVÖ), 24. Oktober 2019. https://avoe.at/referenzsterbetafel-und-stornovektor-des-gesamtbestands-2012-16/

Gesamtbestand (total portfolio) of Austrian Pension Funds (Pensionskassen) 2010--16

# mortalityTables.load("Austria_PK-Bestand_2010-16")
# PKBestandstafel.2010.16
# plotMortalityTables(PKBestandstafel.2010.16[,,"qx", "raw"], legend.position = "right", title = "Austrian pension fund mortalities 2010-16", aes = aes(color = type)) +
  # facet_grid(sex ~ .) + labs(color = "Collective")

Germany

Tables in use:

Annuities

Sterbetafel 1987 R

[TODO: Get table data!] * Source: Lühr, K.-H.: Neue Sterbetafeln für die Rentenversicherung, Blätter DGVM XVII (1986), 485--513. https://link.springer.com/article/10.1007/BF02808817

DAV 1994 R:

mortalityTables.load("Germany_Annuities_DAV1994R")
DAV1994R.male
DAV1994R.male.av
DAV1994R.female
DAV1994R.female.av

DAV 2004 R:

mortalityTables.load("Germany_Annuities_DAV2004R")
DAV2004R.male
DAV2004R.male.2Ord
DAV2004R.male.av
DAV2004R.male.av.2Ord
DAV2004R.female
DAV2004R.female.2Ord
DAV2004R.female.av
DAV2004R.female.av.2Ord

Comparison

plotMortalityTables(
  DAV1994R.male, DAV1994R.female, 
  DAV2004R.male, DAV2004R.male.2Ord, 
  DAV2004R.female, DAV2004R.female.2Ord,

  Period = 2000, aes = aes(linetype = sex, color = interaction(year, data)), 
  legend.position = c(0.01, 0.99), legend.justification = c(0,1), legend.key.width = unit(2, "lines"),
  title = "Comparison of German Annuity Tables, Period 2000"
) + labs(linetype = NULL, color = NULL)

plotMortalityTrend(
  DAV1994R.male, DAV1994R.female, 
  DAV2004R.male, DAV2004R.male.2Ord, 
  DAV2004R.female, DAV2004R.female.2Ord,

  Period = 2000, aes = aes(linetype = sex, color = interaction(year, data)), 
  legend.position = c(0.99, 0.99), legend.justification = c(1,1), legend.key.width = unit(2, "lines"), 
  title = "Age-specific trends of German Annuity Tables, Period 2000"
) + labs(linetype = NULL, color = NULL) + theme(legend.box.just = "right")

Population Mortality (German Census tables)

mortalityTables.load("Germany_Census")
mort.DE.census

Comparison

plotMortalityTables(
  mort.DE.census,

  aes = aes(color = table),
  legend.position = "right", legend.key.width = unit(2, "lines"),
  title = "Comparison of German Census Mortalities"
) + labs(color = NULL) + facet_grid(sex ~ .)

Tables for contract with death characteristics (Life Insurances, Endowments)

Association Table of Assured Lives 1986

[TODO]

DAV 1994 T

mortalityTables.load("Germany_Endowments_DAV1994T")
DAV1994T.male
DAV1994T.male.2Ord
DAV1994T.female
DAV1994T.female.2Ord

DAV 2008 T, DAV 2008 T R/NR

mortalityTables.load("Germany_Endowments_DAV2008T")
DAV2008T.male
DAV2008T.male.2Ord
DAV2008T.male.nonsmoker
DAV2008T.male.nonsmoker.2Ord
DAV2008T.male.smoker
DAV2008T.male.smoker.2Ord

DAV2008T.female
DAV2008T.female.2Ord
DAV2008T.female.nonsmoker
DAV2008T.female.nonsmoker.2Ord
DAV2008T.female.smoker
DAV2008T.female.smoker.2Ord

Comparisons

plotMortalityTables(
  DAV1994T.male, DAV1994T.male.2Ord, DAV2008T.male, DAV2008T.male.2Ord, DAV2008T.male.nonsmoker,  DAV2008T.male.smoker,
  DAV1994T.female, DAV1994T.female.2Ord, DAV2008T.female, DAV2008T.female.2Ord, DAV2008T.female.nonsmoker,  DAV2008T.female.smoker,
  aes = aes(color = interaction(year, collar), linetype = data), legend.position = "right", legend.key.width = unit(1.5, "lines"),
  title = "German whole life mortality tables"
) + facet_grid(sex ~ .)

Occupational Disability

DAV 1997 I

[TODO] https://aktuar.de/unsere-themen/lebensversicherung/Seiten/default.aspx

DAV 1998 EU

[TODO] https://aktuar.de/unsere-themen/lebensversicherung/Seiten/default.aspx

DAV 2001 EM/EM-T

[TODO] https://aktuar.de/unsere-themen/lebensversicherung/Seiten/default.aspx

MTPL Annuities

DAV 2006 HUR

[TODO] https://aktuar.de/unsere-themen/lebensversicherung/Seiten/default.aspx

Old-Age Care

[TODO]

DAV 2008 P

[TODO]

Occupational Pensions

Heubeck Richttafeln 1959

[TODO]

Heubeck Richttafeln 1983

[TODO]

Heubeck Richttafeln 1998

[TODO]

Richttafeln DAV 2005-G

[TODO]

https://aktuar.de/unsere-themen/lebensversicherung/Seiten/default.aspx

Heubeck Richttafeln 2018-G

[TODO]

United States of America

Source: [https://content.naic.org/sites/default/files/pbr_data_valuation_manual_current_edition.pdf] (Appendix M)

[TODO]

Annuities (individual and group)

Whole Life Insurances

Experience Tables

Pension Plans

RP-2000

RP-2014

Source: Society of Actuaries. RP-2014 Mortality Tables Report. Techn. Ber. Okt. 2014. URL: https://www.soa.org/experience-studies/2014/research-2014-rp/.

Source: Society of Actuaries. Mortality Improvement Scale MP-2014 Report. Techn. Ber. Okt. 2014. URL: https://www.soa.org/experience-studies/2014/research-2014-mp/.



Try the MortalityTables package in your browser

Any scripts or data that you put into this service are public.

MortalityTables documentation built on Nov. 2, 2023, 5:52 p.m.