# NOT RUN {
PLACKETTcop(0.4,0.6,para=1)
P(0.4,0.6) # independence copula, same two values because Theta == 1
PLcop(0.4,0.6,para=10.25) # joint probability through positive association
# }
# NOT RUN {
# Joe (2014, p. 164) shows the closed form copula density of the Plackett.
"dPLACKETTcop" <- function(u,v,para) {
eta <- para - 1; A <- para*(1 + eta*(u+v-2*u*v))
B <- ((1 + eta*(u+v))^2 - 4*para*eta*u*v)^(3/2); return(A/B)
}
u <- 0.08; v <- 0.67 # Two probabilities to make numerical evaluations.
del <- 0.0001 # a 'small' differential value of probability
u1 <- u; u2 <- u+del; v1 <- v; v2 <- v+del
# Density following (Nelsen, 2006, p. 10)
dCrect <- (PLcop(u2, v2, para=10.25) - PLcop(u2, v1, para=10.25) -
PLcop(u1, v2, para=10.25) + PLcop(u1, v1, para=10.25))/del^2
dCanal <- dPLACKETTcop(u, v, para=10.25)
dCfunc <- densityCOP(u, v, cop=PLcop, para=10.25, deluv = del)
R <- round(c(dCrect, dCanal, dCfunc), digits=6)
message("Density: ", R[1], "(manual), ", R[2], "(analytical), ", R[3], "(function)");
# Comparison of partial derivatives
dUr <- (PLcop(u2, v2, para=10.25) - PLcop(u1, v2, para=10.25))/del
dVr <- (PLcop(u2, v2, para=10.25) - PLcop(u2, v1, para=10.25))/del
dU <- derCOP(u, v, cop=PLcop, para=10.25)
dV <- derCOP2(u, v, cop=PLcop, para=10.25)
R <- round(c(dU, dV, dUr, dVr), digits=6)
message("Partial derivatives dU=", R[1], " and dUr=", R[3], "\n",
" dV=", R[2], " and dVr=", R[4]) #
# }
Run the code above in your browser using DataLab