Last chance! 50% off unlimited learning
Sale ends in
where $\tilde{\mathbf{C}}(u,v)$ is the dual of a copula and $u$ and $v$ are nonexceedance probabilities. The dual of a copula is the expression for the probability that either $U \le u$ or $V \le v$, which is unlike the co-copula (function) (see coCOP
) that provides $\mathrm{Pr}[U > u \mathrm{\ or\ } V > v]$. The dual of a copula is a function and not in itself a copula. The dual of the survivial copula (surCOP
) is the co-copula (function) (coCOP
). Some rules of copulas mean that
where $\hat\mathbf{C}(u',v')$ is the survival copula in terms of exceedance probabilities $u'$ and $v'$ or in surCOP
+ duCOP
equal unity.
The function duCOP
gives q <- 1 - duCOP(u,v)
. So as a mnemonic: A dual of a copula is the probabililty of nonexceedance if the hazard sources must dual (concur, link, pair, twin) to cause failure.
duCOP(u, v, cop=NULL, para=NULL, ...)
COP
, coCOP
, surCOP
, jointCOP
, joint.curvesCOP
u <- runif(1); t <- runif(1)
duCOP(cop=W,u,t) # joint or probability for perfect negative dependence
duCOP(cop=P,u,t) # joint or probability for perfect independence
duCOP(cop=M,u,t) # joint or probability for perfect positive dependence
duCOP(cop=PSP,u,t) # joint or probability for some positive dependence
# Next demonstrate COP + duCOP = 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)
surCOP(1-u,1-v, cop=MOcop, para=ab) + duCOP(u,v, cop=MOcop, para=ab) # UNITY
# See extended code listings and discussion in the Note section}
<keyword>copula operator</keyword>
<keyword>joint probability</keyword>
<keyword>joint probability (exclusive or)</keyword>
<concept>exclusive or</concept>
<concept>mutually exclusive or</concept>
<concept>mutually exclusive or condition</concept>
Run the code above in your browser using DataLab