Learn R Programming

copBasic (version 2.1.4)

surCOP: The Survival Copula

Description

Compute the survival copula from a copula (Nelsen, 2006, pp. 32--34), which is defined as

$$\hat{\mathbf{C}}(1-u,1-v) = \hat{\mathbf{C}}(u',v') = \mathrm{Pr}[U > u, V > v] = u' + v' - 1 + \mathbf{C}(1-u',1-v')\mbox{,}$$ where \(u'\) and \(v'\) are exceedance probabilities and \(\mathbf{C}(u,v)\) is the copula. The survivial copula is a reflection of both \(U\) and \(V\).

The survival copula is an expression of the joint probability that both \(U > v\) and \(U > v\) when the arguments \(a\) and \(b\) to \(\hat{\mathbf{C}}(a,b)\) are exceedance probabilities as shown. This is unlike a copula that has \(U \le u\) and \(V \le v\) for nonexceedance probabilities \(u\) and \(v\). Alternatively, the joint probability that both \(U > u\) and \(V > v\) can be solved using just the copula \(1 - u - v + \mathbf{C}(u,v)\), as shown below where the arguments to \(\mathbf{C}(u,v)\) are nonexceedance probabilities. The later formula is the joint survival function \(\overline{\mathbf{C}}(u,v)\) defined for a copula (Nelsen, 2006, p. 33) as $$\overline{\mathbf{C}}(u,v) = \mathrm{Pr}[U > u, V > v] = 1 - u - v + \mathbf{C}(u,v)\mbox{.}$$ Users are directed to the collective documentation in COP and simCOPmicro for more details on copula reflection.

Usage

surCOP(u, v, cop=NULL, para=NULL, exceedance=TRUE, ...)

Arguments

u

Exceedance probability \(u' = 1 - u\) (\(u\) nonexceedance based on exceedance) in the \(X\) direction;

v

Exceedance probability \(v' = 1 - v\) (\(v\) nonexceedance based on exceedance) in the \(Y\) direction;

cop

A copula function;

para

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

exceedance

A logical affirming whether u and v are really in exceedance probability or not? If FALSE, then the complements of the two are made internally and the nonexceedances can thus be passed; and

...

Additional arguments to pass (such as parameters, if needed, for the copula in the form of an R list).

Value

Value(s) for the survival copula are returned.

References

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

See Also

COP, coCOP, duCOP, surfuncCOP, simCOPmicro

Examples

Run this code
# NOT RUN {
u  <-  0.26; v  <- 0.55   # nonexceedance probabilities
up <- 1 - u; vp <- 1 - v  #    exceedance probabilities
surCOP(up, vp,   cop=PSP, exceedance=TRUE)  # 0.4043928
surCOP(u, v,     cop=PSP, exceedance=FALSE) # 0.4043928 (same because of symmetry)
surfuncCOP(u, v, cop=PSP)                   # 0.4043928
# All three examples show joint prob. that U > u and V > v.

# }
# NOT RUN {
# A survival copula is a copula so it increases to the upper right with increasing
# exceedance probabilities. Let us show that by hacking the surCOP function into
# a copula for feeding back into the algorithmic framework of copBasic.
UsersCop <- function(u,v, para=NULL) {
     afunc <- function(u,v, theta=para) { surCOP(u, v, cop=N4212cop, para=theta)}
     return(asCOP(u,v, f=afunc)) }
image(gridCOP(cop=UsersCop, para=1.15), col=terrain.colors(20),
      xlab="U, EXCEEDANCE PROBABILITY", ylab="V, EXCEEDANCE PROBABILITY") #
# }

Run the code above in your browser using DataLab