R: Fit Age-Period-Cohort models and Lee-Carter models with...

apc.LCa {Epi} | R Documentation

## Fit Age-Period-Cohort models and Lee-Carter models with effects modeled by natural splines.

### Description

`apc.LCa` fits an Age-Period-Cohort model and sub-models (using `apc.fit`) as well as Lee-Carter models (using `LCa.fit`). `show.apc.LCa` plots the models in little boxes with their residual deviance with arrows showing their relationships.

### Usage

    apc.LCa( data,
      keep.models = FALSE,
              ... )
    show.apc.LCa( x,
           dev.scale = TRUE,
                 top = "Ad", ... )

### Arguments

`data` | A data frame that must have columns `A`, `P`, `D` and `Y`, see e.g. `apc.fit`
`keep.models` | Logical. Should the `apc` object and the 5 `LCa` objects be returned too?
`...` | Further parameters passed on to `LCa.fit` or `boxes.matrix`.
`x` | The result from a call to `apc.LCa`.
`dev.scale` | Should the vertical position of the boxes with the models be scales relative to the deviance between the Age-drift model and the extended Lee-Carter model?
`top` | The model presented at the top of the plot of boxes (together with any other model with larger deviance) when vertical position is scaled by deviances. Only "Ad", "AP", "AC", "APa" or "ACa" will make sense.

### Details

The function `apc.LCa` fits all 9 models (well, 10) available as extension and sub-models of the APC-model and compares them by returning deviance and residual df.

### Value

A 9 by 2 matrix classified by model and deviance/df; optionally (if `models=TRUE`) a list with the matrix as `dev`, `apc`, an `apc` object (from `apc.fit`), and `LCa`, a list with 5 `LCa` objects (from `LCa.fit`).

### Author(s)

Bendix Carstensen, http://bendixcarstensen.com

### See Also

`apc.fit`, `LCa.fit`

### Examples

    library( Epi )
    clear()
    # Danish lung cancer incidence in 5x5x5 Lexis triangles
    data( lungDK )
    lc <- subset( lungDK, Ax>40 )[,c("Ax","Px","D","Y")]
    names( lc )[1:2] <- c("A","P")
    head( lc )

    al <- apc.LCa( lc, npar=c(9,6,6,6,10), keep.models=TRUE, maxit=500, eps=10e-3 )
    show.apc.LCa( al, dev=TRUE )

    # Danish mortality data
    ## Not run:
    data( M.dk )
    mdk <- subset( M.dk, sex==1 )[,c("A","P","D","Y")]
    head( mdk )

    al <- apc.LCa( mdk, npar=c(15,15,20,6,6), maxit=50, eps=10e-3,
                   quiet=FALSE, VC=FALSE )
    show.apc.LCa( al, dev=FALSE )
    show.apc.LCa( al, dev=TRUE )
    show.apc.LCa( al, top="AP" )

    # Fit a reasonable model to Danish mortality data and plot results
    mAPa <- LCa.fit( mdk, model="APa", npar=c(15,15,20,6,6), c.ref=1930,
                     a.ref=70, quiet=FALSE, maxit=250 )
    par( mfrow=c(1,3) )
    plot( mAPa )
    ## End(Not run)

[Package Epi version 2.47 Index]