This function creates an object of class BiCop and checks for family/parameter consistency.

BiCop(family, par, par2 = 0, tau = NULL, check.pars = TRUE)

Arguments

family

An integer defining the bivariate copula family:
0 = independence copula
1 = Gaussian copula
2 = Student t copula (t-copula)
3 = Clayton copula
4 = Gumbel copula
5 = Frank copula
6 = Joe copula
7 = BB1 copula
8 = BB6 copula
9 = BB7 copula
10 = BB8 copula
13 = rotated Clayton copula (180 degrees; survival Clayton'') \cr `14` = rotated Gumbel copula (180 degrees; survival Gumbel'')
16 = rotated Joe copula (180 degrees; survival Joe'') \cr `17` = rotated BB1 copula (180 degrees; survival BB1'')
18 = rotated BB6 copula (180 degrees; survival BB6'')\cr `19` = rotated BB7 copula (180 degrees; survival BB7'')
20 = rotated BB8 copula (180 degrees; ``survival BB8'')
23 = rotated Clayton copula (90 degrees)
`24` = rotated Gumbel copula (90 degrees)
`26` = rotated Joe copula (90 degrees)
`27` = rotated BB1 copula (90 degrees)
`28` = rotated BB6 copula (90 degrees)
`29` = rotated BB7 copula (90 degrees)
`30` = rotated BB8 copula (90 degrees)
`33` = rotated Clayton copula (270 degrees)
`34` = rotated Gumbel copula (270 degrees)
`36` = rotated Joe copula (270 degrees)
`37` = rotated BB1 copula (270 degrees)
`38` = rotated BB6 copula (270 degrees)
`39` = rotated BB7 copula (270 degrees)
`40` = rotated BB8 copula (270 degrees)
`104` = Tawn type 1 copula
`114` = rotated Tawn type 1 copula (180 degrees)
`124` = rotated Tawn type 1 copula (90 degrees)
`134` = rotated Tawn type 1 copula (270 degrees)
`204` = Tawn type 2 copula
`214` = rotated Tawn type 2 copula (180 degrees)
`224` = rotated Tawn type 2 copula (90 degrees)
`234` = rotated Tawn type 2 copula (270 degrees)

par

Copula parameter.

par2

Second parameter for bivariate copulas with two parameters (t, BB1, BB6, BB7, BB8, Tawn type 1 and type 2; default is par2 = 0). par2 should be an positive integer for the Students's t copula family = 2.

tau

numeric; value of Kendall's tau; has to lie in the interval (-1, 1). Can only be used with one-parameter families and the t copula. If tau is provided, par will be ignored.

check.pars

logical; default is TRUE; if FALSE, checks for family/parameter-consistency are omitted (should only be used with care).

Value

An object of class BiCop(). It is a list containing information about the bivariate copula. Its components are:

family, par, par2

copula family number and parameter(s),

npars

number of parameters,

familyname

name of the copula family,

tau

Kendall's tau,

beta

Blomqvist's beta,

taildep

lower and upper tail dependence coefficients,

call

the call that created the object.

Objects of this class are also returned by the BiCopEst() and BiCopSelect() functions. In this case, further information about the fit is added.

Note

For a comprehensive summary of the model, use summary(object); to see all its contents, use str(object).

Author

Thomas Nagler

Examples


## create BiCop object for bivariate t-copula
obj <- BiCop(family = 2, par = 0.4, par2 = 6)
obj
#> Bivariate copula: t (par = 0.4, par2 = 6, tau = 0.26) 

## see the object's content or a summary
str(obj)
#> List of 9
#>  $ family    : num 2
#>  $ par       : num 0.4
#>  $ par2      : num 6
#>  $ npars     : num 2
#>  $ familyname: chr "t"
#>  $ tau       : num 0.262
#>  $ beta      : logi NA
#>  $ taildep   :List of 2
#>   ..$ lower: num 0.127
#>   ..$ upper: num 0.127
#>  $ call      : language BiCop(family = 2, par = 0.4, par2 = 6)
#>  - attr(*, "class")= chr "BiCop"
summary(obj)
#> Family
#> ------ 
#> No:    2
#> Name:  t
#> 
#> Parameter(s)
#> ------------
#> par:  0.4
#> par2: 6
#> Dependence measures
#> -------------------
#> Kendall's tau:    0.26
#> Upper TD:         0.13 
#> Lower TD:         0.13 
#> 

## a selection of functions that can be used with BiCop objects
simdata <- BiCopSim(300, obj)  # simulate data
BiCopPDF(0.5, 0.5, obj) # evaluate density in (0.5,0.5)
#> [1] 1.185466
plot(obj)  # surface plot of copula density

contour(obj)  # contour plot with standard normal margins

print(obj)  # brief overview of BiCop object
#> Bivariate copula: t (par = 0.4, par2 = 6, tau = 0.26) 
summary(obj)  # comprehensive overview of BiCop object
#> Family
#> ------ 
#> No:    2
#> Name:  t
#> 
#> Parameter(s)
#> ------------
#> par:  0.4
#> par2: 6
#> Dependence measures
#> -------------------
#> Kendall's tau:    0.26
#> Upper TD:         0.13 
#> Lower TD:         0.13 
#>