Learn R Programming

copBasic (version 2.2.6)

mleCOP: Maximum Pseudo-Log-Likelihood Estimation for Copula Parameter Estimation

Description

Perform maximum pseudo-log-likelihood estimation (pMLE) for copula parameters by maximizing the function: $$\mathcal{L}(\Theta_p) = \sum_{i=1}^n \log\bigl[ c(F_x(x_i), F_y(y_i); \Theta_p)\bigr]\mbox{,}$$ where \(\mathcal{L}(\Theta_p)\) is the log-likelihood for parameter vector \(\Theta_p\) of dimension \(p\), and \(c(u,v; \Theta_p)\) is the bivariate copula density. The \(u\) and \(v\) are estimated by the respective empirical cumulative distribution functions \(u = F_x(\cdots)\) and \(v = F_y(\cdots)\) for each of the joint realizations of a sample of size \(n\). The \(c(u,v)\) is numerically estimated by the copula using the densityCOP function.

Usage

mleCOP(u, v=NULL, cop=NULL, parafn=function(k) return(k),
          interval=NULL, init.para=NULL, verbose=FALSE, control=list(),
          the.zero=.Machine$double.eps^0.25, s=0, ...)

Value

The value(s) for the estimated parameters are returned within an R

list where the elements listed below are populated unique to this package. The other elements of the returned list are generated from either the optimise() (1D, \(p = 1\)) or optim() (pD, \(p \ge 2\)) functions of R.

para

The parameter(s) in a canonical element after the one-dimensional root finding (\(p = 1\)) or multi-dimensional optimization (\(p \ge 2\)) solutions are passed through parafn so that these are in the parameter units of the copula and not necessarily those transformed for the optimization;

packagetext

A helpful message unique to the copBasic package;

loglik

The maximum of the log-likelihood matching the name for the same quantity by the function fitCopula in package copula though a separate implementation is used in copBasic;

AIC

Akaike information criterion (AIC) (see also aicCOP): \(\mathrm{AIC} = 2p - 2\mathcal{L}(\Theta_p)\); and

BIC

Bayesian information criterion (BIC) (see also bicCOP): \(\mathrm{BIC} = p\log(n) - 2\mathcal{L}(\Theta_p)\).

Arguments

u

Nonexceedance probability \(u\) in the \(X\) direction;

v

Nonexceedance probability \(v\) in the \(Y\) direction and if NULL then u is treated as a two column R data.frame;

cop

A copula function;

parafn

A function responsible for generating the parameters. This is often just a simple return of a parameter vector as copBasic uses this style of parameterization, but this function can take over parameter remapping to handle boundary conditions to benefit the search or provide an interface into other copula packages in R (see Examples);

interval

The search interval for root finding, by stats::optimise(), if the parameter dimension of the copula is \(p = 1\). The interval is not used for \(p \ge 2\);

init.para

The initial guesses for the parameters for the \(p\)-dimensional optimization for \(p \ge 2\). The initial guess is used, by stats::optim(), if the parameter dimension of the copula is \(p = 1\) and interval is NULL (see Examples);

verbose

A logical that internally is converted to integer to trigger 1 (sum of logs of densityCOP shown), 2 (add reporting of the copula parameter on each iteration), or more levels of verbose reporting scheme within the objective function. This is independent from the control$trace of function optim();

control

This argument is the argument of the same name for optim();

the.zero

The value for “the zero” of the copula density function. This argument is the argument of the same name for densityCOP. The default here is intended to suggest that a tiny nonzero value for density will trap the numerical zero densities;

s

A vector of at least two presumably uniformly distributed or regular sequence of nonexceedance probabilities in \(U\) for simulation of \(V\) by simCOPv and plotting of these \(U\) and \(V\). This plotting is only made if the length of \(s\) is nonzero and verbose is greater than or equal to 2. This plotting feature for the s is pedagogical and intended for demonstration or teaching opportunities. This feature has no utility for the optimization itself; and

...

Additional arguments to pass, see source code for the internally used functions that can pick these additional arguments up.

Author

W.H. Asquith

References

Joe, H., 2014, Dependence modeling with copulas: Boca Raton, CRC Press, 462 p.

See Also

densityCOP