copBasic (version 2.2.4)

qua.regressCOP: Perform Quantile Regression using a Copula by Numerical Derivative Method for V with respect to U

Description

Perform quantile regression (Nelsen, 2006, pp. 217--218) using a copula by numerical derivatives of the copula (derCOPinv). If \(X\) and \(Y\) are random variables having quantile functions \(x(F)\) and \(y(G)\) and letting \(y=\tilde{y}(x)\) denote a solution to \(\mathrm{Pr}[Y \le y\mid X = x] = F\), where \(F\) is a nonexceedance probability. Then the curve \(y=\tilde{y}(x)\) is the quantile regression curve of \(V\) or \(Y\) with respect to \(U\) or \(X\), respectively. If \(F=1/2\), then median regression is performed (med.regressCOP). Using copulas, the quantile regression is expressed as $$\mathrm{Pr}[Y \le y\mid X = x] = \mathrm{Pr}[V \le G(y) \mid U = F(x)] = \mathrm{Pr}[V \le v\mid U = v] = \frac{\delta \mathbf{C}(u,v)}{\delta u}\mbox{,}$$ where \(v = G(y)\) and \(u = F(x)\). The general algorithm is

  1. Set \(\delta \mathbf{C}(u,v)/\delta u = F\),

  2. Solve the regression curve \(v = \tilde{v}(u)\) (provided by derCOPinv), and

  3. Replace \(u\) by \(x(u)\) and \(v\) by \(y(v)\).

The last step is optional as step two produces the regression in probability space, which might be desired, and step 3 actually transforms the probability regressions into the quantiles of the respective random variables.

Usage

qua.regressCOP(f=0.5, u=seq(0.01,0.99, by=0.01), cop=NULL, para=NULL, ...)

Value

An R

data.frame of the regressed probabilities of \(V\) and provided \(U=u\) values is returned.

Arguments

f

A single value of nonexceedance probability \(F\) to perform regression at and defaults to median regression \(F=1/2\);

u

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

cop

A copula function;

para

Vector of parameters or other data structure, if needed, to pass to the copula; and

...

Additional arguments to pass.

Author

W.H. Asquith

References

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

See Also

med.regressCOP, derCOPinv, qua.regressCOP.draw