Learn R Programming

VineCopula (version 2.2.0)

BiCopDeriv: Derivatives of a Bivariate Copula Density

Description

This function evaluates the derivative of a given parametric bivariate copula density with respect to its parameter(s) or one of its arguments.

Usage

BiCopDeriv(u1, u2, family, par, par2 = 0, deriv = "par", log = FALSE,
  obj = NULL, check.pars = TRUE)

Arguments

u1, u2

numeric vectors of equal length with values in [0,1].

family

integer; single number or vector of size length(u1); defines the bivariate copula family: 0 = independence copula 1 = Gaussian copula 2 = Student t copula (t-copula) 3 = Clayton copula 4 = Gumbel copula 5 = Frank copula 6 = Joe copula 13 = rotated Clayton copula (180 degrees; ``survival Clayton'') 14 = rotated Gumbel copula (180 degrees; ``survival Gumbel'') 16 = rotated Joe copula (180 degrees; ``survival Joe'') 23 = rotated Clayton copula (90 degrees) 24 = rotated Gumbel copula (90 degrees) 26 = rotated Joe copula (90 degrees) 33 = rotated Clayton copula (270 degrees) 34 = rotated Gumbel copula (270 degrees) 36 = rotated Joe copula (270 degrees)

par

numeric; single number or vector of size length(u1); copula parameter.

par2

integer; single number or vector of size length(u1); second parameter for the t-Copula; default is par2 = 0, should be an positive integer for the Students's t copula family = 2.

deriv

Derivative argument "par" = derivative with respect to the first parameter (default) "par2" = derivative with respect to the second parameter (only available for the t-copula) "u1" = derivative with respect to the first argument u1 "u2" = derivative with respect to the second argument u2

log

Logical; if TRUE than the derivative of the log-likelihood is returned (default: log = FALSE; only available for the derivatives with respect to the parameter(s) (deriv = "par" or deriv = "par2")).

obj

BiCop object containing the family and parameter specification.

check.pars

logical; default is TRUE; if FALSE, checks for family/parameter-consistency are omitted (should only be used with care).

Value

A numeric vector of the bivariate copula derivative

  • of the copula family

  • with parameter(s) par, par2

  • with respect to deriv,

  • evaluated at u1 and u2.

Details

If the family and parameter specification is stored in a BiCop object obj, the alternative version

BiCopDeriv(u1, u2, obj, deriv = "par", log = FALSE)

can be used.

References

Schepsmeier, U. and J. Stoeber (2014). Derivatives and Fisher information of bivariate copulas. Statistical Papers, 55 (2), 525-542. http://link.springer.com/article/10.1007/s00362-013-0498-x.

See Also

RVineGrad, RVineHessian, BiCopDeriv2, BiCopHfuncDeriv, BiCop

Examples

Run this code
# NOT RUN {
## simulate from a bivariate Student-t copula
set.seed(123)
cop <- BiCop(family = 2, par = -0.7, par2 = 4)
simdata <- BiCopSim(100, cop)

## derivative of the bivariate t-copula with respect to the first parameter
u1 <- simdata[,1]
u2 <- simdata[,2]
BiCopDeriv(u1, u2, cop, deriv = "par")

## estimate a Student-t copula for the simulated data
cop <- BiCopEst(u1, u2, family = 2)
## and evaluate its derivative w.r.t. the second argument u2
BiCopDeriv(u1, u2, cop, deriv = "u2")

# }

Run the code above in your browser using DataLab