Learn R Programming

copBasic (version 1.5.1)

tauCOP: The Kendall's Tau of a Copula

Description

Compute the Kendall's Tau $\tau_\mathbf{C}$ of a copula according to Nelson (2006) by $$\tau_\mathbf{C} = 4\int_0^1 \int_0^1 \mathbf{C}(u,v) \frac{\delta\mathbf{C}(u,v)}{\delta u} \frac{\delta\mathbf{C}(u,v)}{\delta v} \mathrm{d}u\mathrm{d}v\mbox{.}$$

However, Nelson (2006, p. 164) reports that this form is often not amenable to computation and that the expression $$\tau_\mathbf{C} = 1 - 4\int_0^1 \int_0^1 \frac{\delta\mathbf{C}(u,v)}{\delta u} \frac{\delta\mathbf{C}(u,v)}{\delta v} \mathrm{d}u\mathrm{d}v\mbox{.}$$ is to be preferred. This expression is used by the tauCOP function.

Usage

tauCOP( cop=NULL,  para=NULL,
       cop2=NULL, para2=NULL, byloops=FALSE, delta=0.002, ...)

Arguments

cop
A copula function;
para
Vector of parameters or other data structure, if needed, to pass to the copula;
cop2
A second copula function;
para2
Vector of parameters or other data structure, if needed, to pass to the second copula;
byloops
Should brute force nested for loops be used instead of two integrate functions to perform the double integration;
delta
The $\mathrm{d}u$ and $\mathrm{d}v$ for the integration; and
...
Additional arguments to pass.

Value

  • The value for $\tau_\mathbf{C}$ is returned.

References

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

See Also

rhoCOP, derCOP, derCOP2

Examples

Run this code
Tau <- tauCOP(cop=P, cop2=P)
print(Tau)

Tau <- tauCOP(cop=M, cop2=M, byloops=TRUE)
print(Tau)

Tau <- tauCOP(cop=W, byloops=TRUE)
print(Tau)

Tau <- tauCOP(cop=P, cop2=P)
print(Tau)

Tau <- tauCOP(cop=M, cop2=M, byloops=TRUE)
print(Tau)

Tau <- tauCOP(cop=W, byloops=TRUE)
print(Tau)

Tau <- tauCOP(cop=W, cop2=P)
print(Tau)

Tau <- tauCOP(cop=P, cop2=W)
print(Tau)

Tau <- tauCOP(cop=P, cop2=M)
print(Tau)


para <- list(cop1=PLACKETTcop,  cop2=PLACKETTcop,
             para1=c(0.00395),  para2=c(4.67),
             alpha=0.9392,      beta=0.5699)
Tau <- tauCOP(cop=composite2COP,para=para)
print(Tau)


para <- list(cop1=PLACKETTcop,  cop2=PLACKETTcop,
             para1=c(0.14147),  para2=c(20.96),
             alpha=0.0411,      beta=0.6873)
Tau <- tauCOP(cop=composite2COP,para=para)
print(Tau)




para <- list(cop1=PLACKETTcop,  cop2=PLACKETTcop,
             para1=c(0.10137),  para2=c(4492.87),
             alpha=0.0063,      beta=0.0167)
Tau <- tauCOP(cop=composite2COP,para=para)
print(Tau)

Run the code above in your browser using DataLab