Learn R Programming

copBasic (version 2.0.1)

joint.curvesCOP2: Compute Coordinates of the Marginal Probabilities given joint AND or OR Probability

Description

Compute the coordinates of the bivariate marginal probabilities for variables $U$ and $V$ given selected probabilities levels $t$ for a copula $\mathbf{C}(u,v)$ for $u$ with respect to $v$. For the case of a joint and probability, symbolically the solution is $$\mathrm{Pr}[U \le v,\ V \le v] = t = \mathbf{C}(u,v)\mbox{,}$$ where $V \mapsto [t_i, t_{j}, t_{j+1}, \cdots, 1; \Delta]$ (an irregular sequence of $v$ values from the $i$th value of $t_i$ provided through to unity) and thus $$t_i \mapsto \mathbf{C}(u, v=V)\mbox{,}$$ and solving for the sequence of $u$. The index $j$ is to indicate that a separate loop is involved and is distinct from $i$. The pairings ${u(t_i), v(t_i)}$ for each $t$ are packaged as an Rdata.frame. This operation is very similiar to the plotting capabilities in level.curvesCOP2 for level curves (Nelsen, 2006, pp. 12--13) but implemented in the function joint.curvesCOP2 for alternative utility.

For the case of a joint or probability, the dual of a copula (function) or $\tilde{\mathbf{C}}(u,v)$ from a copula (Nelsen, 2006, pp. 33--34) is used and symbolically the solution is: $$\mathrm{Pr}[U \le v \mathrm{\ or\ } V \le v] = t = \tilde{\mathbf{C}}(u,v) = u + v - \mathbf{C}(u,v)\mbox{,}$$ where $V \mapsto [0, v_j, v_{j+1}, \cdots, t_i; \Delta]$ (an irregular sequence of $v$ values from zero through to the $i$th value of $t$) and thus $$t_i \mapsto \tilde{\mathbf{C}}(u, v=V)\mbox{,}$$ and solving for the sequence of $u$. The index $j$ is to indicate that a separate loop is involved and is distinct from $i$. The pairings ${u(t_i), v(t_i)}$ for each $t$ are packaged as an Rdata.frame.

Usage

joint.curvesCOP2(cop=NULL, para=NULL, type=c("and", "or"),
                 probs=c(0.5, 0.8, 0.90, 0.96, 0.98, 0.99, 0.995, 0.998),
                 zero2small=TRUE, small=1E-6, divisor=100, delv=0.001, ...)

Arguments

cop
A copula function;
para
Vector of parameters or other data structure, if needed, to pass to the copula;
type
What type of joint probability is to be computed;
probs
The joint probabilities for which to compute the coordinates. The default values represent especially useful annual return period equivalents that are useful in hydrologic risk analyses;
zero2small
A logical controlling whether precise zero value for probability are converted to a small value and precise unity values for probability are converted to the value 1 - small; this logical is useful if transformation from probabil
small
The value for small described for zero2small;
divisor
A divisor on a computation of a $\Delta$ for incrementing through the $v$ domain as part of the coordinate computation (see source code);
delv
A $\Delta v$ for setup of the incrementing through the $v$ domain as part of the coordinate computation (see source code);
...
Additional arguments to pass to the duCOP function of copBasic or $uniroot$ function in R.

Value

  • An Rlist is returned with elements each of the given probs.

References

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

See Also

diagCOPatf, duCOP, jointCOP, joint.curvesCOP, level.curvesCOP2

Examples

Run this code
JC.vwrtu <- joint.curvesCOP( cop=PSP, prob=0.98)$"0.98"
JC.uwrtv <- joint.curvesCOP2(cop=PSP, prob=0.98)$"0.98"
plot(qnorm(JC.vwrtu$U), qnorm(JC.vwrtu$V), type="l", lwd=6, col=8,
     xlab="STANDARD NORMAL VARIATE IN U", xlim=c(2,5), ylim=c(2,5),
     ylab="STANDARD NORMAL VARIATE IN V")
lines(qnorm(JC.uwrtv$U), qnorm(JC.uwrtv$V), col=2, lwd=2)
mtext("98th Joint Percentile Level Curve for PSP Copula")

Run the code above in your browser using DataLab