Computes the log transformation with an offset, including its inverse and the first two derivatives.

logofflink(theta, offset = 0, inverse = FALSE, deriv = 0,
           short = TRUE, tag = FALSE)
log1plink(theta, offset = 0, inverse = FALSE, deriv = 0,
          short = TRUE, tag = FALSE)

Arguments

theta

Numeric or character. See below for further details.

offset

Offset value. See Links. For log1plink this argument should not be used because the offset is implicitly unity .

inverse, deriv, short, tag

Details at Links.

Details

The log-offset link function is very commonly used for parameters that are greater than a certain value. In particular, it is defined by log(theta + offset) where offset is the offset value. For example, if offset = 0.5 then the value of theta is restricted to be greater than \(-0.5\).

Numerical values of theta close to -offset or out of range result in Inf, -Inf, NA or NaN.

The offset is implicitly 1 in log1plink. It is equivalent to logofflink(offset = 1) but is more accurate if abs(theta) is tiny. It may be used for lrho in extbetabinomial provided an offset log(size - 1) for \(\eta_2\) is included.

Value

For deriv = 0, the log of theta+offset, i.e., log(theta+offset) when inverse = FALSE, and if inverse = TRUE then exp(theta)-offset.

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.

Here, all logarithms are natural logarithms, i.e., to base e.

References

McCullagh, P. and Nelder, J. A. (1989). Generalized Linear Models, 2nd ed. London: Chapman & Hall.

Author

Thomas W. Yee

Note

The default means this function is identical to loglink.

Numerical instability may occur when theta is close to -offset.

Examples

if (FALSE) { # \dontrun{
logofflink(seq(-0.2, 0.5, by = 0.1))
logofflink(seq(-0.2, 0.5, by = 0.1), offset = 0.5)
       log(seq(-0.2, 0.5, by = 0.1) + 0.5) } # }