
Last chance! 50% off unlimited learning
Sale ends in
where $\mathbf{C}^{\star}(u',v')$ is the co-copula and $u'$ and $v'$ are exceedance probabilities, which are equivalent to $1-u$ and $1-v$ respectively. The co-copula is the expression for the probability that either $U > u$ or $V > v$ when the arguments to $\mathbf{C}^{\star}(u',v')$ are exceedance probabilities, which is unlike the dual of a copula function (see duCOP
) that provides $\mathrm{Pr}[U \le u \mathrm{\ or\ } V \le v]$.
The co-copula is a function and not in itself a copula. Some rules of copulas mean that $\mathbf{C}(u,v) + \mathbf{C}^{\star}(u',v') \equiv 1$ or in COP
+ coCOP
equal unity.
coCOP(u, v, cop=NULL, para=NULL, exceedance=TRUE, ...)
u
and v
really $u'$ and $v'$, respectively? If FALSE
, then the complements of the two are made internally and the nonexceedances can thus be passed; andCOP
, surCOP
, duCOP
u <- 1 - runif(1); v <- 1 - runif(1) # as exceedance, in order to reinforce the
# change to exceedance instead of nonexceedance that otherwise dominates this package
message("Exceedance probabilities u' and v' are ", u, "and ", v)
coCOP(u,v,cop=PLACKETTcop, para=10) # Positive association Plackett
# computation using manual manipulation to nonexceedance probability
1 - COP(cop=PSP,(1-u),(1-v))
# computation using internal manipulation to nonexceedance probability
coCOP(cop=PSP,u,v)
# Next demonstrate COP + coCOP = unity.
"MOcop.formula" <- function(u,v, para=para, ...) {
alpha <- para[1]; beta <- para[2]; return(min(v*u^(1-alpha), u*v^(1-beta)))
}
"MOcop" <- function(u,v, ...) { asCOP(u,v, f=MOcop.formula, ...) }
u <- 0.2; v <- 0.75; ab <- c(1.5, 0.3)
COP(u,v, cop=MOcop, para=ab) + coCOP(1-u,1-v, cop=MOcop, para=ab) # UNITY
Run the code above in your browser using DataLab