copBasic (version 2.1.5)

isCOP.PQD: The Positively Quadrant Dependency State of a Copula

Description

Numerically determine the global property of the positively quadrant dependency (PQD) characteristic of a copula as described by Nelsen (2006, p. 188). The random variables \(X\) and \(Y\) are PQD if for all \((x,y)\) in \(\mathcal{R}^2\) when \(H(x,y) \ge F(x)G(x)\) for all \((x,y)\) in \(\mathcal{R}^2\) and thus by the copula \(\mathbf{C}(u,v) \ge uv\) for all \((u,v)\) in \(\mathcal{I}^2\). Alternatively, this means that \(\mathbf{C}(u,v) \ge \mathbf{\Pi}\), and thus it can be said that it is globally “greater” than independence (\(uv = \Pi\); P).

Nelsen (2006) shows that a copula is PQD when $$0 \le \beta_\mathbf{C} \mbox{,\ } 0 \le \gamma_\mathbf{C}\mbox{,\ and\ } 0 \le \rho_\mathbf{C} \le 3\tau_\mathbf{C}\mbox{,}$$ where \(\beta_\mathbf{C}\), \(\gamma_\mathbf{C}\), \(\rho_\mathbf{C}\), and \(\tau_\mathbf{C}\) are various copula measures of association or concordance that are respectively described in blomCOP, giniCOP, rhoCOP, and tauCOP. The concept of negatively quadrant dependency (NQD) is the reverse: \(\mathbf{C}(u,v) \le \mathbf{\Pi}\) for all \((u,v)\) in \(\mathcal{I}^2\); so NQD is globally “smaller” than independence.

Conceptually, PQD is related to the probability that two random variables are simultaneously small (or simultaneously large) is at least as great as it would be if they were independent. The graph of a PQD copula lies on or above the copulatic surface of the independence copula \(\mathbf{\Pi}\), and conversely a NQD copula lies on or below \(\mathbf{\Pi}\).

Albeit a “global” property of a copula, there can be “local” variations in the PQD/NQD state. Points in \(\mathcal{I}^2\) where \(\mathbf{C}(u,v) - \mathbf{\Pi} \ge 0\) are locally PQD, whereas points in \(\mathcal{I}^2\) where \(\mathbf{C}(u,v) - \mathbf{\Pi} \le 0\) and locally NQD. Lastly, readers are directed to the last examples in wolfCOP because as those examples involve the copulatic difference from independence \(\mathbf{C}(u,v) - \mathbf{\Pi} = \mathbf{C}(u,v) - \mathbf{\Pi}\) with 3-D renderings.

Usage

isCOP.PQD(cop=NULL, para=NULL, uv=NULL, empirical=FALSE, verbose=TRUE, ...)

Arguments

cop

A copula function;

para

Vector of parameters or other data structure, if needed, to pass to the copula;

uv

An optional R data.frame of \(U\) and \(V\) nonexceedance probabilities \(u\) and \(v\) for the random variables \(X\) and \(Y\). This argument triggers different value return behavior (see Value);

empirical

A logical that will use sample versions for Gini Gamma, Spearman Rho, and Kendall Tau. This feature is only applicable if the copula is empirical and therefore the para argument is the data.frame of \(u\) and \(v\), which will be passed along to sample version functions instead of copula (see Note);

verbose

A logical that will report the four concordance measures; and

...

Additional arguments to pass, which are then passed to subordinate functions.

Value

If uv=NULL then a logical for the global property of PQD is returned but if argument uv is a data.frame, then an R list is returned, and that list holds the global condition in global.PQD and local condition assessments in local.PQD and local.NQD.

References

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

See Also

blomCOP, giniCOP, rhoCOP, tauCOP, isCOP.LTD, isCOP.RTI

Examples

Run this code
# NOT RUN {
isCOP.PQD(cop=PSP) # TRUE
# }
# NOT RUN {
# }
# NOT RUN {
# Example concerning Empirical Bivariate Copula and sample versions for comparison.
set.seed(10); n <- 1000
para <- list(cop1=PLACKETTcop, cop2=PLACKETTcop, para1=0.145,  para2=1.45,
             alpha=0.81, beta=0.8)
D <- simCOP(n=n, cop=composite2COP, para=para, cex=0.5, col=rgb(0,0,0,0.2), pch=16)
#tauCOP(cop=EMPIRcop, para=D)   # ??? but == 1
cor(D$U, D$V, method="kendall") # -0.3224705
blomCOP(cop=EMPIRcop, para=D)   # -0.332
giniCOP(cop=EMPIRcop, para=D)   # -0.3692037
GINI <- sum(abs(rank(D$U)+rank(D$V)-n-1)) - sum(abs(rank(D$U)-rank(D$V)))
print(GINI/as.integer(n^2/2))   # -0.369996
rhoCOP(cop=EMPIRcop, para=D)    # ??? but fails
cor(D$U, D$V, method="spearman")      # -0.456694
lmomco::lcomoms2(D)$T2     #  1.0000000 -0.4568357
                           # -0.4567859  1.0000000
# }

Run the code above in your browser using DataLab