maxwellQlink | R Documentation |
Computes the maxwellQlink
transformation, its inverse and the
first two derivatives.
maxwellQlink(theta, p = stop("Argument 'p' must be specified."),
bvalue = NULL, inverse = FALSE,
deriv = 0, short = TRUE, tag = FALSE)
theta |
Numeric or character. See below for further details. |
p |
Numeric. A single value between 0 and 1.
It is the |
bvalue, inverse, deriv, short, tag |
See |
In the VGLM/VGAM quantile regression context, this link function
can be used to model any p
–quantile of the
Maxwell distribition. It is the maxwellQlink
transformation
given by
\sqrt{ 2~\textrm{\texttt{qgamma(p, 1.5) / a.}}}
Here, a
is positive parameter as in
maxwell
whereas qgamma
is the quantile
function of the gamma distribution.
Numerical values of a
or p
out of range will
result in Inf
, -Inf
, NA
or NaN
correspondingly.
In particular, arguments inverse
and deriv
are
disregarded if theta
is character.
Also, if inverse = TRUE
and deriv = 0
, then argument
theta
becomes \eta
. See Links
for further details about this.
For deriv = 0
, the maxwellQlink
transformation of
theta
, when inverse = FALSE
. If inverse = TRUE
,
then the inverse given by 2*qgamma(p, 1.5) / theta^2
is returned.
For deriv = 1
, this function returns the derivative
d
eta
/ d
theta
,
if inverse = FALSE
. Else, the reciprocal
d
theta
/ d
eta
as a function of theta
.
If deriv = 2
, then the second order derivatives in terms of
theta
are accordingly returned.
Numerical instability may occur for values theta
too close
to zero. Use argument bvalue
to replace them before
computing the link.
V. Miranda and Thomas W. Yee.
maxwell
,
Links
.
## E1. maxwellQlink() and its inverse ##
p <- 0.25 ## Modeling the first quartile
my.a <- seq(0, 5, by = 0.1)[-1]
max(my.a - maxwellQlink(maxwellQlink(my.a, p = p), p = p, inverse =TRUE)) ## Zero
## E2. The first two values are negative, NaN is returned ##
maxwellQlink(theta = c(-0.15, -0.10, 0.25, 0.35) , p = p, inverse = FALSE)
maxwellQlink(theta = c(-0.15, -0.10, 0.25, 0.35) , p = p, inverse = TRUE)
## E3. Plot of the maxwellQlink() and its inverse ##
## Note, inverse = TRUE implies that argument 'theta' becomes 'eta'. ##
#--- THE LINK
plot(maxwellQlink(theta = my.a, p = p) ~ my.a,
type = "l", col = "blue", lty = "dotted", lwd = 3,
xlim = c(-0.1, 10), ylim = c(-0.1, 5), las = 1,
main = c("Blue is maxwellQlink(), green is the inverse"),
ylab = "eta = maxwellQlink", xlab = "theta")
abline(h = 0, v = 0, lwd = 2)
#--- THE INVERSE
lines(my.a, maxwellQlink(theta = my.a, p = p,inv = TRUE),
col = "green", lwd = 2, lty = "dashed")
lines(my.a, my.a) # Tracing the identity function for double--check
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.