Helhac | R Documentation |
This function computes the Hellinger distance between all the child copulas of a hac object obtained by the function gethac
, i.e.,
given a q
-dimensional random vector \mathbf{X} = (\mathbf{X_{1}},...,\mathbf{X}_{k})
with \mathbf{X}_{i}
a d_{i}
-dimensional random vector, i.e., q = d_{1} + ... + d_{k}
,
where \mathbf{X}_{1},...,\mathbf{X}_{k}
are connected via a hierarchical Archimedean copula with two nesting levels, Helhac
computes the Hellinger distance
between \mathbf{X}_{1},...,\mathbf{X}_{k}
.
Helhac(cop, dim, M)
cop |
A hac object as provided by the function |
dim |
The vector of dimensions |
M |
The size of the Monte Carlo sample used for approximating the integral of the Hellinger distance. |
When \mathbf{X}
has copula density c
with marginal copula densities c_{i}
of \mathbf{X}_{i}
for i = 1, \dots, k
,
the \Phi
-dependence between \mathbf{X}_{1}, \dots, \mathbf{X}_{k}
equals
\mathcal{D}_{\Phi} \left (\mathbf{X}_{1}, \dots, \mathbf{X}_{k} \right ) = \int_{[0,1]^{q}} \prod_{i = 1}^{k} c_{i}(\mathbf{u}_{i}) \Phi \left (\frac{c(\mathbf{u})}{\prod_{i = 1}^{k}c_{i}(\mathbf{u}_{i})} \right ),
for a certain continuous, convex function \Phi : (0,\infty) \rightarrow \mathbb{R}
.
The Hellinger distance corresponds to \Phi(t) = (\sqrt{t}-1)^{2}
, and \mathcal{D}_{(\sqrt{t}-1)^{2}}
could be approximated by
\widehat{\mathcal{D}}_{(\sqrt{t}-1)^{2}}
as implemented in the function phihac
.
Yet, for this specific choice of \Phi
, it is better to first simplify \mathcal{D}_{(\sqrt{t}-1)^{2}}
to
\mathcal{D}_{(\sqrt{t}-1)^{2}} \left (\mathbf{X}_{1}, \dots, \mathbf{X}_{k} \right ) = 2 - 2 \int_{[0,1]^{q}} \sqrt{c(\mathbf{u}) \prod_{i = 1}^{k} c_{i}(\mathbf{u}_{i})} d \mathbf{u},
and then, by drawing a sample of size M
from c
, say \mathbf{U}^{(1)}, \dots, \mathbf{U}^{(M)}
, with \mathbf{U}^{(\ell)} = (\mathbf{U}_{1}^{(\ell)}, \dots, \mathbf{U}_{k}^{(\ell)})
, approximate it by
\widetilde{D}_{(\sqrt{t}-1)^{2}} = 2 - \frac{2}{M} \sum_{\ell = 1}^{M} \sqrt{\frac{\prod_{i = 1}^{k} c_{i} \left (\mathbf{U}_{i}^{(\ell)} \right )}{c \left ( \mathbf{U}^{(\ell)} \right )}}.
The function Helhac
computes \widetilde{\mathcal{D}}_{(\sqrt{t}-1)^{2}}
when c
is a hierarchical Archimedean copula with two nesting levels,
as produced by the function gethac
.
The Hellinger distance between \mathbf{X}_{1}, \dots, \mathbf{X}_{k}
(i.e., between all the child copulas of the hac object).
De Keyser, S. & Gijbels, I. (2024).
Parametric dependence between random vectors via copula-based divergence measures.
Journal of Multivariate Analysis 203:105336.
doi: https://doi.org/10.1016/j.jmva.2024.105336.
gethac
for creating a hac object with two nesting levels,
phihac
for computing the \Phi
-dependence between all the child copulas of a hac object with two nesting levels,
mlehac
for maximum pseudo-likelihood estimation of the parameters of a hac object with two nesting levels.
dim = c(2,2)
thetas = c(2,3,4)
# 4 dimensional nested Gumbel copula with (theta_0,theta_1,theta_2) = (2,3,4)
HAC = gethac(dim,thetas,type = 1)
# Hellinger distance based on Monte Carlo sample of size 10000
Hel = Helhac(HAC,dim,10000)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.