Rhobit Link Function
Computes the rhobit link transformation, including its inverse and the first two derivatives.
rhobitlink(theta, bminvalue = NULL, bmaxvalue = NULL,
inverse = FALSE, deriv = 0, short = TRUE, tag = FALSE)theta |
Numeric or character. See below for further details. |
bminvalue, bmaxvalue |
Optional boundary values, e.g.,
values of |
inverse, deriv, short, tag |
Details at |
The rhobitlink 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.
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 eta / d theta 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 bminvalue, etc.
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 rhobitlink is very similar to
fisherzlink, e.g., just twice the value of
fisherzlink.
Thomas W. Yee
theta <- seq(-0.99, 0.99, by = 0.01)
y <- rhobitlink(theta)
## Not run:
plot(theta, y, type = "l", las = 1, ylab = "", main = "rhobitlink(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))
rhobitlink(x) # Has NAs
rhobitlink(x, bminvalue = -1 + .Machine$double.eps,
bmaxvalue = 1 - .Machine$double.eps) # Has no NAsPlease choose more modern alternatives, such as Google Chrome or Mozilla Firefox.