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