vineknockoffs.copulas.FrankCopula#
- class vineknockoffs.copulas.FrankCopula(par=nan)#
Frank copula (bivariate).
Parameters#
- parfloat
Parameter of the Frank copula. Default is np.nan.
Examples#
# ToDo: add an example here
Notes#
The cdf of the Frank copula with parameter \(\theta \in (-\infty, \infty) \setminus \lbrace 0 \rbrace\) is given by
\[C(u, v; \theta) = -\frac{1}{\theta} \log\bigg(\frac{1}{1-\exp(-\theta)} \big[(1-\exp(-\theta)) - (1-\exp(-\theta u)) (1-\exp(-\theta v)) \big] \bigg).\]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).
- FrankCopula.aic(u, v)#
Evaluate the copula AIC.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.cdf(u, v)#
Evaluate the copula cdf.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_cdf_d_par(u, v)#
Evaluate the derivative of the copula cdf wrt the parameter.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_hfun_d_par(u, v)#
Evaluate the derivative of the copula hfun wrt the parameter.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_hfun_d_u(u, v)#
Evaluate the derivative of the copula hfun wrt u.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_hfun_d_v(u, v)#
Evaluate the derivative of the copula hfun wrt v.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_hfun_d_par(u, v)#
Evaluate the derivative of the inverse of the copula hfun wrt the parameter.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_hfun_d_u(u, v)#
Evaluate the derivative of the inverse of the copula hfun wrt u.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_hfun_d_v(u, v)#
Evaluate the derivative of the inverse of the copula hfun wrt v.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_vfun_d_par(u, v)#
Evaluate the derivative of the inverse of the copula vfun wrt the parameter.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_vfun_d_u(u, v)#
Evaluate the derivative of the inverse of the copula vfun wrt u.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_inv_vfun_d_v(u, v)#
Evaluate the derivative of the inverse of the copula vfun wrt v.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_vfun_d_par(u, v)#
Evaluate the derivative of the copula vfun wrt the parameter.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_vfun_d_u(u, v)#
Evaluate the derivative of the copula vfun wrt u.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.d_vfun_d_v(u, v)#
Evaluate the derivative of the copula vfun wrt v.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.hfun(u, v)#
Evaluate the copula hfun.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.inv_hfun(u, v)#
Evaluate the inverse of the copula hfun.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.inv_vfun(u, v)#
Evaluate the inverse of the copula vfun.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.ll(u, v)#
Evaluate the copula log-likelihood.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.mle_est(u, v)#
Estimation of the copula parameter with maximum likelihood.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
self : object
- u
- FrankCopula.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.
- FrankCopula.pdf(u, v)#
Evaluate the copula pdf.
Parameters#
- u
numpy.ndarray
Array of observations for the first variable.
- v
numpy.ndarray
Array of observations for the second variable.
Returns#
- res
numpy.ndarray
Result array.
- u
- FrankCopula.sim(n_obs=100)#
Simulate random observations from the copula.
Parameters#
- n_obs :
The number of observations to simulate.
Returns#
- res
numpy.ndarray
Result array.