| rhobit {VGAM} | R Documentation |
Computes the rhobit link transformation, including its inverse and the first two derivatives.
rhobit(theta, earg = list(), inverse = FALSE, deriv = 0,
short = TRUE, tag = FALSE)
theta |
Numeric or character.
See below for further details.
|
earg |
Optional list. Extra argument for passing in additional information.
Values of theta which are less than or equal to -1 can be
replaced by the bminvalue component of the list earg
before computing the link function value.
Values of theta which are greater than or equal to 1 can be
replaced by the bmaxvalue component of the list earg
before computing the link function value.
See Links for general information about earg.
|
inverse |
Logical. If TRUE the inverse function is computed.
|
deriv |
Order of the derivative. Integer with value 0, 1 or 2.
|
short |
Used for labelling the blurb slot of a
vglmff-class object.
|
tag |
Used for labelling the linear/additive predictor in the
initialize slot of a vglmff-class object.
Contains a little more information if TRUE. |
The rhobit link function is commonly used for parameters that
lie between -1 and 1. Numerical values of theta
close to -1 or 1 or out of range result in Inf,
-Inf, NA or NaN. The arguments short
and tag are used only if theta is character.
For deriv = 0, the rhobit of theta, i.e., log((1 +
theta)/(1 - theta)) when inverse = FALSE, and if inverse =
TRUE then (exp(theta) - 1)/(exp(theta) + 1).
For deriv = 1, then the function returns d theta
/ d eta as a function of theta if inverse =
FALSE, else if inverse = TRUE then it returns the reciprocal.
Numerical instability may occur when theta is close to -1 or 1.
One way of overcoming this is to use earg.
The correlation parameter of a standard bivariate normal distribution lies between -1 and 1, therefore this function can be used for modelling this parameter as a function of explanatory variables.
The link function rhobit is very similar to
fisherz, e.g., just twice the value of
fisherz.
Thomas W. Yee
Documentation accompanying the VGAM package at http://www.stat.auckland.ac.nz/~yee contains further information and examples.
theta = seq(-0.99, 0.99, by=0.01)
y = rhobit(theta)
## Not run:
plot(theta, y, type="l", las=1, ylab="", main="rhobit(theta)")
abline(v=0, h=0, lty=2)
## End(Not run)
x = c(seq(-1.02, -0.98, by=0.01), seq(0.97, 1.02, by=0.01))
rhobit(x) # Has NAs
rhobit(x, earg=list(bminvalue= -1 + .Machine$double.eps,
bmaxvalue= 1 - .Machine$double.eps)) # Has no NAs