This function plots/returns the lambda-function of given bivariate copula data.
BiCopLambda(
u1 = NULL,
u2 = NULL,
family = "emp",
par = 0,
par2 = 0,
PLOT = TRUE,
obj = NULL,
...
)
Data vectors of equal length with values in \([0,1]\) (default:
u1
and u2 = NULL
).
An integer defining the bivariate copula family or indicating
the empirical lambda-function: "emp"
= empirical lambda-function
(default) 1
= Gaussian copula; the theoretical lambda-function is simulated
(no closed formula available) 2
= Student-t copula; the theoretical lambda-function is simulated
(no closed formula available) 3
= Clayton copula 4
= Gumbel copula 5
= Frank copula 6
= Joe copula 7
= BB1 copula 8
= BB6 copula 9
= BB7 copula 10
= BB8
copula
Copula parameter; if the empirical lambda-function is chosen,
par = NULL
or 0
(default).
Second copula parameter for t-, BB1, BB6, BB7 and BB8 copulas
(default: par2 = 0
).
Logical; whether the results are plotted. If PLOT = FALSE
, the values empLambda
and/or theoLambda
are
returned (see below; default: PLOT = TRUE
).
BiCop
object containing the family and parameter
specification.
Additional plot arguments.
If the empirical lambda-function is chosen and
PLOT = FALSE
, a vector of the empirical lambda's is returned.
If the theoretical lambda-function is chosen and
PLOT = FALSE
, a vector of the theoretical lambda's is returned.
If the family and parameter specification is stored in a BiCop()
object obj
, the alternative versions
BiCopLambda(obj, PLOT = TRUE, ...)
and
BiCopLambda((u1, u2, obj, PLOT = TRUE, ...)
can be used.
The \(\lambda\)-function is characteristic for each bivariate copula family and defined by Kendall's distribution function \(K\): $$ \lambda(v,\theta) := v - K(v,\theta) $$ with $$K(v,\theta) := P(C_{\theta}(U_1,U_2) \leq v),\ \ v\in [0,1]. $$ For Archimedean copulas one has the following closed form expression in terms of the generator function \(\varphi\) of the copula \(C_{\theta}\): $$\lambda(v,\theta) = \frac{\varphi(v)}{\varphi '(v)}, $$ where \(\varphi '\) is the derivative of \(\varphi\). For more details see Genest and Rivest (1993) or Schepsmeier (2010).
For the bivariate Gaussian and Student-t copula no closed form expression for the theoretical \(\lambda\)-function exists. Therefore it is simulated based on samples of size 1000. For all other implemented copula families there are closed form expressions available.
The plot of the theoretical \(\lambda\)-function also shows the limits of the \(\lambda\)-function corresponding to Kendall's tau \(=0\) and Kendall's tau \(=1\) (\(\lambda=0\)).
For rotated bivariate copulas one has to transform the input arguments
u1
and/or u2
. In particular, for copulas rotated by 90 degrees
u1
has to be set to 1-u1
, for 270 degrees u2
to
1-u2
and for survival copulas u1
and u2
to 1-u1
and 1-u2
, respectively. Then \(\lambda\)-functions for the
corresponding non-rotated copula families can be considered.
Genest, C. and L.-P. Rivest (1993). Statistical inference procedures for bivariate Archimedean copulas. Journal of the American Statistical Association, 88 (423), 1034-1043.
Schepsmeier, U. (2010). Maximum likelihood estimation of C-vine pair-copula
constructions based on bivariate copulas from different families. Diploma
thesis, Technische Universitaet Muenchen.
https://mediatum.ub.tum.de/?id=1079296.
set.seed(123)
# simulate from Clayton copula
cop <- BiCop(3, tau = 0.5)
dat <- BiCopSim(1000, cop)
# create lambda-function plots
op <- par(mfrow = c(1, 3))
BiCopLambda(dat[, 1], dat[, 2]) # empirical lambda-function
BiCopLambda(cop) # theoretical lambda-function
BiCopLambda(dat[, 1], dat[, 2], cop) # both
par(op)