The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

R-CMD-check R-hub CRAN RStudio mirror downloads DOI

clmplus

Repository GitHub that contains the code for the package clmplus.

About clmplus:

Model Lexis dimension Claims reserving
a age development (chain-ladder model)
ac age-cohort development-accident
ap age-period development-calendar
apc age-period-cohort development-calendar-accident

Installation

The developer version of clmplus can be installed from GitHub.

library(devtools)
devtools::install_github("gpitt71/clmplus")

The current version of clmplus can be installed from CRAN.

install.packages('clmplus')

Get Started

In this brief example, we work with the sifa.mtpl data from the clmplus package. Further examples can be found in the package vignettes. The data set of cumulative claim payments is transformed into an AggregateDataPP object that pre-processes the data for claim development modelling.

library(clmplus)

data ("sifa.mtpl")
dataset = sifa.mtpl
datapp = AggregateDataPP(cumulative.payments.triangle = dataset, eta= 1/2)

Our models can be fit with the clmplus function.

a.model.fit=clmplus(datapp,
                 hazard.model = "a") # age-model replicates the chain ladder
                 
ac.model.fit=clmplus(datapp,
                 hazard.model = "ac")

ap.model.fit=clmplus(datapp,
                 hazard.model = "ap")

apc.model.fit=clmplus(datapp,
                  hazard.model = "apc")

The plot function can be be used to explore the scaled deviance residuals of fitted models. Below, an example for the age-period-cohort (apc) model for the claim development.

plot(apc.model.fit)

Predictions are performed with the predict function.

a.model=predict(a.model.fit)
                 
# clmplus reserve (age model)
sum(a.model$reserve)
#226875.5


ac.model=predict(ac.model.fit,
                 gk.fc.model = 'a',
                 gk.order = c(1,1,0))
                 
# clmplus reserve (age-cohort model)
sum(ac.model$reserve)
#205305.7

ap.model= predict(ap.model.fit,
                 ckj.fc.model = 'a',
                 ckj.order = c(0,1,0))

# clmplus reserve (age-period model)
sum(ap.model$reserve)
#215602.8
          
                 
apc.model= predict(apc.model.fit,
                  gk.fc.model = 'a',
                  ckj.fc.model = 'a',
                  gk.order = c(1,1,0),
                  ckj.order = c(0,1,0))
# clmplus reserve (age-period-cohort model)
sum(apc.model$reserve)
#213821.6

The fitted effect (and extrapolated) effects can be inspected with the plot function. We continue below the example with the apc model.

plot(apc.model)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.