Learn R Programming

copBasic (version 2.0.1)

diagCOP: The Diagonals of a Copula

Description

Compute the primary diagonal or alternatively the secondary diagonal (Nelsen, 2006, pp. 12 and 16) of copula $\mathbf{C}(u,v)$. The primary diagonal is defined as $$\mathbf{\delta}_\mathbf{C}(t) = \mathbf{C}(t,t)\mbox{,}$$ and the secondary diagonal is defined as $$\mathbf{\delta}^{\star}_\mathbf{C}(t) = \mathbf{C}(t,1-t)\mbox{.}$$ Plotting is provided by this function because the diagonals are such important visual attributes of a copula. This function computes whole diagonals. If individual values are desired, then users are asked to use function calls such as COP(0.25,0.25, cop=P) for the primary diagonal and COP(0.25,1-0.25, cop=P) for the secondary diagonal, where for both exqmples the independence copula ($uv = \mathbf{\Pi}$; P) was chosen for this clarification.

The $\mathbf{\delta}_\mathbf{C}(t)$ is related to order statistics of the multivariate sample (here bivariate) (Durante and Sempi, 2015, p. 68). The probability for the maxima is $\mathrm{Pr}[\mathrm{max}(u, v) \le t] = \mathbf{C}(t,t) = \mathbf{\delta}_\mathbf{C}(t) \mbox{\ and }$ the probability for the minima is $\mathrm{Pr}[\mathrm{min}(u, v) \le t] = 2t - \mathbf{\delta}_\mathbf{C}(t)\mbox{.}$

Usage

diagCOP(cop=NULL, para=NULL, secondary=FALSE,
        ploton=TRUE, lines=TRUE, delt=0.005, ...)

Arguments

cop
A copula function;
para
Vector of parameters, if needed, to pass to the copula;
secondary
A logical to toggle the secondary diagonal;
ploton
A logical to toggle on the plot;
lines
Draw the lines of diagonal to the current device;
delt
The increment of the diagonal curve to plot, defaults to 0.5-percent intervals, which should be small enough to resolve fine curvature for many copulas in practice; and
...
Additional arguments to pass to the plot() and lines() functions in R.

Value

  • An Rlist of the $t$ values, $\mathbf{\delta}_\mathbf{C}(t,t)$ (primary) or $\mathbf{\delta}^{\star}_\mathbf{C}(t,1-t)$ (secondary diagonal), along with a tag as to which diagonal is returned.

References

Durante, F., and Sempi, C., 2015, Principles of copula theory: Boca Raton, CRC Press, 315 p.

Nelsen, R.B., 2006, An introduction to copulas: New York, Springer, 269 p.

See Also

diagCOPatf, COP, sectionCOP

Examples

Run this code
# The primary diagonal of the W, P, M, and PSP copulas on the same plot
D <- diagCOP(cop=W,   lwd=2)
D <- diagCOP(cop=P,   lty=2, ploton=FALSE)
D <- diagCOP(cop=M,   col=2, ploton=FALSE)
D <- diagCOP(cop=PSP, col=3, ploton=FALSE)
mtext("PRIMARY DIAGONAL OF SIMPLE COPULAS") # four primary diagonals

# The secondary diagonal of the W, P, M, and PSP copulas on the same plot
D <- diagCOP(cop=W,   lwd=2, secondary=TRUE)
D <- diagCOP(cop=P,   lty=2, secondary=TRUE, ploton=FALSE)
D <- diagCOP(cop=M,   col=2, secondary=TRUE, ploton=FALSE)
D <- diagCOP(cop=PSP, col=3, secondary=TRUE, ploton=FALSE)
mtext("SECONDARY DIAGONAL OF SIMPLE COPULAS") # four secondary diagonals

Run the code above in your browser using DataLab