| CAES | R Documentation |
Fits and forecasts mortality rates of two populations using common age effect model.
CAES(
x,
M1,
M2,
curve = c("gompertz", "makeham", "oppermann", "thiele", "wittsteinbumsted", "perks",
"weibull", "vandermaen", "beard", "heligmanpollard", "rogersplanck", "siler",
"martinelle", "thatcher", "gompertz2", "makeham2", "oppermann2", "thiele2",
"wittsteinbumsted2", "perks2", "weibull2", "vandermaen2", "beard2",
"heligmanpollard2", "rogersplanck2", "siler2", "martinelle2", "thatcher2"),
h = 10,
jumpoff = 1
)
x |
vector of ages. |
M1 |
matrix of mortality rates of population 1 (rows as years and columns as ages). |
M2 |
matrix of mortality rates of population 2 (rows as years and columns as ages). |
curve |
name of mortality curve for smoothing forecasted mortality rates (including gompertz, makeham, oppermann, thiele, wittsteinbumsted, perks, weibull, vandermaen, beard, heligmanpollard, rogersplanck, siler, martinelle, thatcher, gompertz2, makeham2, oppermann2, thiele2, wittsteinbumsted2, perks2, weibull2, vandermaen2, beard2, heligmanpollard2, rogersplanck2, siler2, martinelle2, thatcher2, where first 14 curves' parameters are unconstrained and last 14 curves' parameters are generally restricted to be positive). |
h |
forecast horizon (default = 10). |
jumpoff |
if 1, forecasts are based on estimated parameters only; if 2, forecasts are anchored to observed mortality rates in final year (default = 1). |
The common age effect (CAE) model is specified as
ln(m_{x,t,i}) = \alpha_{x,i} + \beta_x \kappa_{t,i} + \epsilon_{x,t,i}.
The model is estimated by Newton updating scheme and is forecasted by ARIMA applied to \kappa_{t,i}. Constraints include sum of \beta_x is one and sum of \kappa_{t,i} is zero. It can be applied to whole age range.
An object of class CAES with associated S3 methods coef, forecast (which = 1 for smoothed (default); which = 2 for raw), plot (which = 1 gives parameter estimates (default); which = 2 gives residuals and forecasts), and residuals.
Kleinow, T. (2015). A common age effect model for the mortality of multiple populations. Insurance: Mathematics and Economics, 63(C), 147-152.
x <- 60:89
a1 <- c(-5.18,-5.12,-4.98,-4.92,-4.82,-4.73,-4.66,-4.53,-4.45,-4.35,
-4.26,-4.17,-4.05,-3.95,-3.84,-3.73,-3.65,-3.52,-3.40,-3.29,
-3.14,-3.02,-2.88,-2.76,-2.64,-2.49,-2.37,-2.25,-2.12,-2.00)
a2 <- c(-4.78,-4.68,-4.57,-4.49,-4.39,-4.29,-4.19,-4.10,-4.00,-3.89,
-3.80,-3.69,-3.60,-3.49,-3.39,-3.29,-3.17,-3.07,-2.96,-2.85,
-2.71,-2.62,-2.49,-2.37,-2.26,-2.14,-2.04,-1.91,-1.82,-1.72)
b <- c(0.0381,0.0340,0.0420,0.0389,0.0423,0.0414,0.0406,0.0393,0.0415,0.0400,
0.0411,0.0362,0.0387,0.0381,0.0384,0.0385,0.0356,0.0314,0.0317,0.0337,
0.0316,0.0298,0.0284,0.0270,0.0248,0.0262,0.0205,0.0215,0.0142,0.0145)
k1 <- c(8.68,8.34,7.99,6.87,8.18,5.73,4.83,5.20,2.74,3.22,
2.99,1.59,1.67,-0.65,-0.39,-1.07,-0.95,-2.78,-3.46,-2.45,
-4.12,-4.66,-4.98,-4.58,-6.30,-4.39,-5.56,-6.52,-8.26,-6.92)
k2 <- c(11.81,11.01,10.59,10.40,9.75,8.15,6.07,6.45,4.60,4.57,
4.15,1.49,1.77,-1.08,-1.44,-0.96,-1.66,-2.25,-4.67,-4.62,
-4.38,-6.37,-6.27,-6.91,-8.22,-7.35,-8.39,-7.87,-9.72,-8.65)
set.seed(123)
M1 <- exp(outer(k1,b)+matrix(a1,nrow=30,ncol=30,byrow=TRUE)+rnorm(900,0,0.07))
M2 <- exp(outer(k2,b)+matrix(a2,nrow=30,ncol=30,byrow=TRUE)+rnorm(900,0,0.07))
fit <- CAES(x=x,M1=M1,M2=M2,curve="makeham",h=30,jumpoff=2)
coef(fit)
forecast::forecast(fit)
plot(fit)
residuals(fit)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.