Learn R Programming

VineCopula (version 2.2.0)

BiCopKDE: Kernel estimate of a Bivariate Copula Density

Description

A kernel density estimate of the copula density is visualized. The function provides the same options as plot.BiCop. Further arguments can be passed to kdecop to modify the estimate.

Usage

BiCopKDE(u1, u2, type = "contour", margins, size, kde.pars = list(),
  ...)

Arguments

u1, u2

numeric vectors of equal length with values in [0,1].

type

plot type; either "contour" or "surface" (partial matching is activated) for a contour or perspective/surface plot respectively.

margins

only relevant for types "contour" and "surface"; options are: "unif" for the original copula density, "norm" for the transformed density with standard normal margins, "exp" with standard exponential margins, and "flexp" with flipped exponential margins. Default is "norm" for type = "contour", and "unif" for type = "surface". "norm" for the transformed density with standard normal margins (partial matching is activated). Default is "norm" for type = "contour", and "unif" for type = "surface".

size

integer; the plot is based on values on a size x size grid; default is 100 for type = "contour", and 25 for type = "surface".

kde.pars

list of arguments passed to kdecop.

optional arguments passed to contour or wireframe.

Details

For further details on estimation see kdecop.

Examples

Run this code
# NOT RUN {
# simulate data from Joe copula
cop <- BiCop(3, tau = 0.3)
u <- BiCopSim(1000, cop)
contour(cop)  # true contours

# kernel contours with standard normal margins
BiCopKDE(u[, 1], u[, 2])
BiCopKDE(u[, 1], u[, 2], kde.pars = list(mult = 0.5))  # undersmooth
BiCopKDE(u[, 1], u[, 2], kde.pars = list(mult = 2))  # oversmooth

# kernel density with uniform margins
BiCopKDE(u[, 1], u[, 2], type = "surface", zlim = c(0, 4))
plot(cop, zlim = c(0, 4))  # true density

# kernel contours are also used in pairs.copuladata
# }
# NOT RUN {
data(daxreturns)
data <- as.copuladata(daxreturns)
pairs(data[c(4, 5, 14, 15)])
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab