quantileFit#
Purpose#
Perform linear quantile regression.
Format#
- qOut = quantileFit(y, x[, tau, w, qCtl])#
- qOut = quantileFit(dataset, formula[, tau, w, qCtl])
- qOut = quantileFit(dataframe, formula[, tau, w, qCtl])
- Parameters:
y (Nx1 vector) – dependent variable.
x (NxK matrix or sparse matrix or N-dimensional array) – independent variables.
dataset (string) – name of dataset.
formula (string) –
formula string of the model.
E.g
"y ~ X1 + X2"
, ‘y’ is the name of dependent variable, ‘X1’ and ‘X2’ are names of independent variables;E.g
"y ~ ."
, ‘.’ means including all variables except dependent variable ‘y’;E.g
"y ~ -1 + X1 + X2"
, ‘-1’ means no intercept model.tau (Mx1 vector) – Optional argument, quantile levels. Default = { 0.05, 0.5, 0.95 };
w (Nx1 vector) – Optional argument, containing weights. Default = uniform weights.
qCtl (struct) –
Optional argument, instance of the
qfitControl
structure containing the following members:qCtl.bandwidth
scalar, the multiplicative factor of the bandwidth. Default = 1.
qCtl.varnames
Kx1 string array, variable names. Default =
{"X1", "X2", ..., "XK"}
. The name for the constant will be added automatically if it is included in the model.qCtl.verbose
scalar, print results Default = 1.
- 1:
Printing on.
- 0:
No printing.
qCtl.const
scalar, include constant in regression. Default = 1.
- 1:
a constant term will be added.
- 0:
no constant term will be added.
qCtl.vce_method
scalar, method to use for calculating the asymptotic covariance matrix. Default = 1.
- 1:
IID errors.
- 2:
heteroskedasticity robust standard errors.
qCtl.bw_method
scalar, method to use for calculating the bandwidth for the asymptotic covariance matrix computation. Default = 1.
- 1:
Hall-Sheather bandwidth.
- 2:
Bofinger bandwidth.
- 3:
Chamberlain bandwidth.
qCtl.vce_kernel
scalar,kernel to use for calculating the asymptotic covariance matrix computation. Default = 1.
- 1:
Normal(Gaussian).
- 2:
Epanechnikov.
- 3:
Biweight.
- 4:
Parzen.
- 5:
Cosine.
qCtl.bootstrap
scalar, number of iterations for bootstrap standard errors and confidence intervals. Default = 0, for no bootstrap.
qCtl.alpha
scalar, alpha values for bootstrap confidence intervals.
- Returns:
qOut (struct) –
instance of
qfitOut
struct structure:qOut.beta
KxM matrix, quantile parameter estimates, with estimates for each tau stored in a separate column.
qOut.u_plus
NxM matrix, positive part of residuals.
qOut.u_minus
NxM matrix, negative part of residuals.
qOut.vce
array, with a KxK matrix estimated asymptotic covariance matrix stored on a separate plane for each tau specified.
qOut.vce_ci
array, with a Kx2 matrix containing lower and upper confidence intervals based on asymptotic covariance estimates stored on separate planes for each tau specified.
qOut.vce_se
matrix, with estimated asymptotic standard errors, stored in separate columns for each tau specified.
qOut.ci
array, with a Kx2 matrix containing bootstrapped lower and upper confidence intervals stored on separate planes for each tau specified.
qOut.se
matrix, with bootstrapped standard errors, stored in a separate column for each tau specified.
qOut.t
KxM matrix, with estimate t-values based on asymptotic standard errors. Estimates for each tau are stored in a separate column.
qOut.pvt
KxM matrix, with p-values for estimated t-values. Estimates for each tau are stored in a separate column.
qOut.number_obs
Scalar, number of observations used in estimation.
qOut.number_missing
Scalar, number of missing values eliminated from original data.
qOut.df_residuals
Scalar, residual degrees of freedom.
qOut.df_model
Scalar, model degrees of freedom.
qOut.h
Vector, bandwidth used in asymptotic variance estimation. Values for each tau are stored in separate columns.
qOut.sparsity
Vector, sparsity used in asymptotic variance estimation. Values for each tau are stored in separate columns.
Examples#
new;
cls;
// Set random number generator seed for
// repeatable random numbers
rndseed 4893;
N = 1000;
x = 10*rndu(N, 1) - 5;
y = 5 + 2*X + rndn(rows(x), 1)*10;
// Set up tau for regression
tau = 0.05;
// Call quantileFit
struct qfitOut qOut;
qOut = quantileFit(Y, X, tau);
This produces the following output
=====================================================================================
Valid cases: 1000 Dependent variable: Y
Missing cases: 0 Deletion method: None
Number variables: 1 DF model 1
DF residuals 998
=====================================================================================
Name Coeff. Standard t-value P >|t| lb ub
Error
-------------------------------------------------------------------------------------
Tau = 0.05
CONSTANT -11.6768 0.5542 -21.0713 0.0000 -12.7629 -10.5907
X1 1.6790 0.1885 8.9059 0.0000 1.3095 2.0485
Source#
quantilefit.src
See also
Functions glm()
, olsmt()
, quantileFitLoc()