RVineAIC: AIC and BIC of an R-Vine Copula Model

View source: R/RVineAIC.R

RVineAICR Documentation

AIC and BIC of an R-Vine Copula Model

Description

These functions calculate the Akaike and Bayesian Information criteria of a d-dimensional R-vine copula model for a given copula data set.

Usage

RVineAIC(data, RVM, par = RVM$par, par2 = RVM$par2)

RVineBIC(data, RVM, par = RVM$par, par2 = RVM$par2)

Arguments

data

An N x d data matrix (with uniform margins).

RVM

An RVineMatrix() object including the structure and the pair-copula families and parameters.

par

A d x d matrix with the pair-copula parameters (optional; default: par = RVM$par).

par2

A d x d matrix with the second parameters of pair-copula families with two parameters (optional; default: par2 = RVM$par2).

Details

If k denotes the number of parameters of an R-vine copula model with log-likelihood l_{RVine} and parameter set \boldsymbol{\theta}, then the Akaike Information Criterion (AIC) by Akaike (1973) is defined as

AIC := -2 l_{RVine}\left(\boldsymbol{\theta}|\boldsymbol{u}\right) + 2 k,

for observations \boldsymbol{u}=(\boldsymbol{u}_1^\prime,..., \boldsymbol{u}_N^\prime)^\prime.

Similarly, the Bayesian Information Criterion (BIC) by Schwarz (1978) is given by

BIC := -2 l_{RVine}\left(\boldsymbol{\theta}|\boldsymbol{u}\right) + \log(N) k.

Value

AIC, BIC

The computed AIC or BIC value, respectively.

pair.AIC, pair.BIC

A d x d matrix of individual contributions to the AIC or BIC value for each pair-copula, respectively. Note: AIC = sum(pair.AIC) and similarly BIC = sum(pair.BIC).

Author(s)

Eike Brechmann

References

Akaike, H. (1973). Information theory and an extension of the maximum likelihood principle. In B. N. Petrov and F. Csaki (Eds.), Proceedings of the Second International Symposium on Information Theory Budapest, Akademiai Kiado, pp. 267-281.

Schwarz, G. E. (1978). Estimating the dimension of a model. Annals of Statistics 6 (2), 461-464.

See Also

RVineLogLik(), RVineVuongTest(), RVineClarkeTest()

Examples


# define 5-dimensional R-vine tree structure matrix
Matrix <- c(5, 2, 3, 1, 4,
            0, 2, 3, 4, 1,
            0, 0, 3, 4, 1,
            0, 0, 0, 4, 1,
            0, 0, 0, 0, 1)
Matrix <- matrix(Matrix, 5, 5)

# define R-vine pair-copula family matrix
family <- c(0, 1, 3, 4, 4,
            0, 0, 3, 4, 1,
            0, 0, 0, 4, 1,
            0, 0, 0, 0, 3,
            0, 0, 0, 0, 0)
family <- matrix(family, 5, 5)

# define R-vine pair-copula parameter matrix
par <- c(0, 0.2, 0.9, 1.5, 3.9,
         0, 0, 1.1, 1.6, 0.9,
         0, 0, 0, 1.9, 0.5,
         0, 0, 0, 0, 4.8,
         0, 0, 0, 0, 0)
par <- matrix(par, 5, 5)

# define second R-vine pair-copula parameter matrix
par2 <- matrix(0, 5, 5)

# define RVineMatrix object
RVM <- RVineMatrix(Matrix = Matrix, family = family, par = par, par2 = par2,
                   names=c("V1", "V2", "V3", "V4", "V5"))

# simulate a sample of size 300 from the R-vine copula model
set.seed(123)
simdata <- RVineSim(300,RVM)

# compute AIC and BIC
RVineAIC(simdata, RVM)
RVineBIC(simdata, RVM)


tnagler/VineCopula documentation built on March 6, 2024, 5 a.m.