Quantile Regression for Continuous Dependent Variables
a symbolic representation of the model to be
estimated, in the form y ~ x1 + x2
, where y
is the
dependent variable and x1
and x2
are the explanatory
variables, and y
, x1
, and x2
are contained in the
same dataset. (You may include more than two explanatory variables,
of course.) The +
symbol means ``inclusion'' not
``addition.'' You may also include interaction terms and main
effects in the form x1*x2
without computing them in prior
steps; I(x1*x2)
to include only the interaction term and
exclude the main effects; and quadratic terms in the form
I(x1^2)
.
the name of a statistical model to estimate. For a list of other supported models and their documentation see: http://docs.zeligproject.org/articles/.
the name of a data frame containing the variables
referenced in the formula or a list of multiply imputed data frames
each having the same variable names and row numbers (created by
Amelia
or to_zelig_mi
).
additional arguments passed to zelig
,
relevant for the model to be estimated.
a factor variable contained in data
. If supplied,
zelig
will subset
the data frame based on the levels in the by
variable, and
estimate a model for each subset. This can save a considerable amount of
effort. You may also use by
to run models using MatchIt
subclasses.
If is set to 'TRUE' (default), the model citation will be printed to the console.
Depending on the class of model selected, zelig
will return
an object with elements including coefficients
, residuals
,
and formula
which may be summarized using
summary(z.out)
or individually extracted using, for example,
coef(z.out)
. See
http://docs.zeligproject.org/articles/getters.html for a list of
functions to extract model components. You can also extract whole fitted
model objects using from_zelig_model
.
zelig(formula, data, model = NULL, ..., weights = NULL, by, bootstrap = FALSE)
The zelig function estimates a variety of statistical models
In addition to the standard inputs, zelig
takes the following additional options
for quantile regression:
tau
: defaults to 0.5. Specifies the conditional quantile(s) that will be
estimated. 0.5 corresponds to estimating the conditional median, 0.25 and 0.75 correspond
to the conditional quartiles, etc. tau vectors with length greater than 1 are not currently
supported. If tau is set outside of the interval [0,1], zelig returns the solution for all
possible conditional quantiles given the data, but does not support inference on this fit
(setx and sim will fail).
se
: a string value that defaults to "nid". Specifies the method by which
the covariance matrix of coefficients is estimated during the sim stage of analysis. se
can take the following values, which are passed to the summary.rq
function from the
quantreg
package. These descriptions are copied from the summary.rq
documentation.
"iid"
which presumes that the errors are iid and computes an estimate of
the asymptotic covariance matrix as in KB(1978).
"nid"
which presumes local (in tau) linearity (in x) of the the
conditional quantile functions and computes a Huber sandwich estimate using a local
estimate of the sparsity.
"ker"
which uses a kernel estimate of the sandwich as proposed by Powell(1990).
...
: additional options passed to rq when fitting the model. See documentation for rq in the quantreg package for more information.
Additional parameters avaialable to this model include:
weights
: vector of weight values or a name of a variable in the dataset
by which to weight the model. For more information see:
http://docs.zeligproject.org/articles/weights.html.
bootstrap
: logical or numeric. If FALSE
don't use bootstraps to
robustly estimate uncertainty around model parameters due to sampling error.
If an integer is supplied, the number of boostraps to run.
For more information see:
http://docs.zeligproject.org/articles/bootstraps.html.
Vignette: http://docs.zeligproject.org/articles/zelig_quantile.html
# NOT RUN {
library(Zelig)
data(stackloss)
z.out1 <- zelig(stack.loss ~ Air.Flow + Water.Temp + Acid.Conc.,
model = "rq", data = stackloss,tau = 0.5)
summary(z.out1)
# }
Run the code above in your browser using DataLab