| conquer {conquer} | R Documentation |
Fit a smoothed quantile regression via convolution-type smoothing method. The solution is computed using gradient descent with Barzilai-Borwein step size. Constructs (1-alpha) confidence intervals with multiplier bootstrap.
conquer(
X,
Y,
tau = 0.5,
kernel = c("Gaussian", "uniform", "parabolic", "triangular"),
h = 0,
checkSing = FALSE,
tol = 1e-04,
iteMax = 5000,
ci = FALSE,
alpha = 0.05,
B = 1000
)
X |
A n by p design matrix. Each row is a vector of observation with p covariates. Number of observations n must be greater than number of covariates p. |
Y |
An n-dimensional response vector. |
tau |
(optional) The desired quantile level. Default is 0.5. Value must be between 0 and 1. |
kernel |
(optional) A character string specifying the choice of kernel function. Default is "Gaussian". Other choices are "Gaussian", "uniform", "parabolic" or "triangular". |
h |
(optional) The bandwidth parameter for kernel smoothing. Default is max(((log(n) + p) / n)^{0.4}, 0.05). The default will be used if the input value is less than 0.05. |
checkSing |
(optional) A logical flag. Default is FALSE. If |
tol |
(optional) Tolerance level of the gradient descent algorithm. The gradient descent algorithm terminates when the maximal entry of the gradient is less than |
iteMax |
(optional) Maximum number of iterations. Default is 5000. |
ci |
(optional) A logical flag. Default is FALSE. If |
alpha |
(optional) The nominal level for (1-alpha)-confidence intervals. Default is 0.05. The input value must be in (0, 1). |
B |
(optional) The size of bootstrap samples. Default is 1000. |
An object containing the following items will be returned:
coeffA (p + 1)-vector of estimated quantile regression coefficients, including the intercept.
iteThe number of iterations of the gradient descent algorithm for convergence.
residualThe residuals of the quantile regression fit.
bandwidthThe value of smoothing bandwidth.
tauThe desired quantile level.
kernelThe choice of kernel function.
nThe sample size.
pThe dimension of the covariates.
perCIThe percentile confidence intervals for regression coefficients. Not available if ci = FALSE.
pivCIThe pivotal confidence intervals for regression coefficients. Not available if ci = FALSE
normCIThe normal-based confidence intervals for regression coefficients. Not available if ci = FALSE
Xuming He <xmhe@umich.edu>, Xiaoou Pan <xip024@ucsd.edu>, Kean Ming Tan <keanming@umich.edu>, and Wen-Xin Zhou <wez243@ucsd.edu>
Barzilai, J. and Borwein, J. M. (1988). Two-point step size gradient methods. IMA J. Numer. Anal. 8 141–148.
Fernandes, M., Guerre, E. and Horta, E. (2019). Smoothing quantile regressions. J. Bus. Econ. Statist., in press.
He, X., Pan, X., Tan, K. M., and Zhou, W.-X. (2020). Smoothed quantile regression for large-scale inference. Preprint.
Koenker, R. and Bassett, G. (1978). Regression quantiles. Econometrica 46 33-50.
n = 500; p = 10 beta = rep(1, p) X = matrix(rnorm(n * p), n, p) Y = 1 + X %*% beta + rt(n, 2) ## Smoothed quantile regression with Gaussian kernel fit.Gauss = conquer(X, Y, tau = 0.5, kernel = "Gaussian") beta.hat.Gauss = fit.Gauss$coeff ## Smoothe quantile regression with uniform kernel fit.unif = conquer(X, Y, tau = 0.5, kernel = "uniform") beta.hat.unif = fit.unif$coeff ## Construct three types of confidence intervals via multiplier bootstrap fit = conquer(X, Y, tau = 0.5, kernel = "Gaussian", ci = TRUE) ci.per = fit$perCI ci.piv = fit$pivCI ci.norm = fit$normCI