| Q.reg {VGAMextra} | R Documentation |
Conditional quantile regression with VGAM
Description
Use this function to adequately confer the formula
in VGAM when fitting quantile regression models.
Usage
Q.reg(y, pvector = NULL, length.arg = NULL)
Arguments
y |
Numeric, a vector or a matrix. It is the response or dependent
variable in the |
pvector |
A prototype vector. Entries are the conditional |
length.arg |
A length–1 positive integer. It is the number of |
Details
Conditional quantile regression can be carried out using family
functions in VGAM and VGAMextra.
The formula must be set up using this function, Q.reg.
Here, the p–quantiles of interest may be entered via
pvector. Alternatively, use argument length.arg by
establishing the length of pvector.
Besides, the corresponding link must be entered.
For example, gamma1Qlink
is the proper link to fit models of conditional quantiles for
data distributed as Gamma via the family function
gamma1.
See examples for further details.
Value
A matrix, each column adequately arranged for regression on conditional quantiles, conforming with VGAM.
Indeed, this is equivalent to cbind(y, y, ...), where the
total number of columns is, either the length of pvector, or
length.arg.
Note
Link functions for quantile regression in VGAM require the
vector of p–quantiles of interest via the argument p.
See normal1sdQlink or
maxwellQlink for instance.
Therefore, the integer entered at length.arg in this function,
if utilized, must match the length of the vector p. Else,
it will be recycled.
Author(s)
V. Miranda and T. W. Yee.
See Also
normal1sdQlink,
maxwellQlink,
gamma1Qlink,
gamma1,
vglm,
vgam
Examples
### Quantile regression with data distributed as Maxwell(s) ###
set.seed(12073)
x2 <- seq(0, 100,length.out = 100) # independent variable
b0 <- 0.5 # true intercept
b1 <- 0.25 # true slope
b2 <- 0.02 # true second order coef.
alpha <- b0 + b1 * x2 + b2 * x2^2 # Quadratically modelling the parameters
nn <- 100 # Sample size
# The data as a data frame. #
mdata <- data.frame(y = rmaxwell(n = nn, rate = alpha), x2 = x2, x3 = x2^2)
# Quantile regression using our link function maxwellQlink(). #
# Quantiles 25%, 50%, 75% are of interest #
my.p <- c(0.25, 0.50, 0.75)
fit <- vglm(Q.reg(y, pvector = my.p) ~ x2 + x3,
# OPTIONALLY Q.reg(y, length = length(my.p)) ~ x2 + x3
maxwell(link = maxwellQlink(p = my.p)),
data = mdata, trace = TRUE, crit = "coef")
coef(fit, matrix = TRUE)
summary(fit)
head(predict(fit))
constraints(fit)