vineknockoffs.copulas.ClaytonCopula#

class vineknockoffs.copulas.ClaytonCopula(par=nan, rotation=0)#

Clayton copula (bivariate).

Parameters#

parfloat

Parameter of the Clayton copula. Default is np.nan.

rotation: int

Rotation (0, 90, 180 or 270) Default is 0.

Examples#

# ToDo: add an example here

Notes#

The cdf of the Clayton copula with parameter \(\theta \in (0, \infty)\) is given by

\[C(u, v; \theta) = (u^{-\theta} + v^{-\theta} - 1)^{-\frac{1}{\theta}}.\]

Methods

aic(u, v)

Evaluate the copula AIC.

cdf(u, v)

Evaluate the copula cdf.

d_cdf_d_par(u, v)

Evaluate the derivative of the copula cdf wrt the parameter.

d_hfun_d_par(u, v)

Evaluate the derivative of the copula hfun wrt the parameter.

d_hfun_d_u(u, v)

Evaluate the derivative of the copula hfun wrt u.

d_hfun_d_v(u, v)

Evaluate the derivative of the copula hfun wrt v.

d_inv_hfun_d_par(u, v)

Evaluate the derivative of the inverse of the copula hfun wrt the parameter.

d_inv_hfun_d_u(u, v)

Evaluate the derivative of the inverse of the copula hfun wrt u.

d_inv_hfun_d_v(u, v)

Evaluate the derivative of the inverse of the copula hfun wrt v.

d_inv_vfun_d_par(u, v)

Evaluate the derivative of the inverse of the copula vfun wrt the parameter.

d_inv_vfun_d_u(u, v)

Evaluate the derivative of the inverse of the copula vfun wrt u.

d_inv_vfun_d_v(u, v)

Evaluate the derivative of the inverse of the copula vfun wrt v.

d_vfun_d_par(u, v)

Evaluate the derivative of the copula vfun wrt the parameter.

d_vfun_d_u(u, v)

Evaluate the derivative of the copula vfun wrt u.

d_vfun_d_v(u, v)

Evaluate the derivative of the copula vfun wrt v.

hfun(u, v)

Evaluate the copula hfun.

inv_hfun(u, v)

Evaluate the inverse of the copula hfun.

inv_vfun(u, v)

Evaluate the inverse of the copula vfun.

ll(u, v)

Evaluate the copula log-likelihood.

mle_est(u, v)

Estimation of the copula parameter with maximum likelihood.

par2tau(par)

Compute Kendall's tau associated with the given value for the copula parameter.

pdf(u, v)

Evaluate the copula pdf.

sim([n_obs])

Simulate random observations from the copula.

tau2par(tau)

Compute the copula parameter associated with the given value for Kendall's tau.

vfun(u, v[, u_])

Evaluate the copula vfun.

Attributes

n_pars

The number of copula parameters.

par

Parameter of the copula.

rotation

Rotation of the copula (0, 90, 180 or 270).

ClaytonCopula.aic(u, v)#

Evaluate the copula AIC.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.cdf(u, v)#

Evaluate the copula cdf.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_cdf_d_par(u, v)#

Evaluate the derivative of the copula cdf wrt the parameter.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_hfun_d_par(u, v)#

Evaluate the derivative of the copula hfun wrt the parameter.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_hfun_d_u(u, v)#

Evaluate the derivative of the copula hfun wrt u.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_hfun_d_v(u, v)#

Evaluate the derivative of the copula hfun wrt v.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_hfun_d_par(u, v)#

Evaluate the derivative of the inverse of the copula hfun wrt the parameter.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_hfun_d_u(u, v)#

Evaluate the derivative of the inverse of the copula hfun wrt u.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_hfun_d_v(u, v)#

Evaluate the derivative of the inverse of the copula hfun wrt v.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_vfun_d_par(u, v)#

Evaluate the derivative of the inverse of the copula vfun wrt the parameter.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_vfun_d_u(u, v)#

Evaluate the derivative of the inverse of the copula vfun wrt u.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_inv_vfun_d_v(u, v)#

Evaluate the derivative of the inverse of the copula vfun wrt v.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_vfun_d_par(u, v)#

Evaluate the derivative of the copula vfun wrt the parameter.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_vfun_d_u(u, v)#

Evaluate the derivative of the copula vfun wrt u.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.d_vfun_d_v(u, v)#

Evaluate the derivative of the copula vfun wrt v.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.hfun(u, v)#

Evaluate the copula hfun.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.inv_hfun(u, v)#

Evaluate the inverse of the copula hfun.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.inv_vfun(u, v)#

Evaluate the inverse of the copula vfun.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.ll(u, v)#

Evaluate the copula log-likelihood.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.mle_est(u, v)#

Estimation of the copula parameter with maximum likelihood.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

self : object

ClaytonCopula.par2tau(par)#

Compute Kendall’s tau associated with the given value for the copula parameter.

Parameters#

parfloat

The copula parameter

Returns#

taufloat

Kendall’s tau.

ClaytonCopula.pdf(u, v)#

Evaluate the copula pdf.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.sim(n_obs=100)#

Simulate random observations from the copula.

Parameters#

n_obs :

The number of observations to simulate.

Returns#

resnumpy.ndarray

Result array.

ClaytonCopula.tau2par(tau)#

Compute the copula parameter associated with the given value for Kendall’s tau.

Parameters#

taufloat

Kendall’s tau.

Returns#

parfloat

The copula parameter.

ClaytonCopula.vfun(u, v, u_=None)#

Evaluate the copula vfun.

Parameters#

unumpy.ndarray

Array of observations for the first variable.

vnumpy.ndarray

Array of observations for the second variable.

Returns#

resnumpy.ndarray

Result array.