powerlink: Power Link Function

View source: R/Linksold.R View source: R/links.q

powerlinkR Documentation

Description

Computes the power transformation, including its inverse and the first two derivatives.

Usage

powerlink(theta, power = 1, inverse = FALSE, deriv = 0,
          short = TRUE, tag = FALSE)

Arguments

theta

Numeric or character. See below for further details.

power

This denotes the power or exponent.

inverse, deriv, short, tag

Details at Links.

Details

The power link function raises a parameter by a certain value of power. Care is needed because it is very easy to get numerical problems, e.g., if power=0.5 and theta is negative.

Value

For powerlink with deriv = 0, then theta raised to the power of power. And if inverse = TRUE then theta raised to the power of 1/power.

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.

Note

Numerical problems may occur for certain combinations of theta and power. Consequently this link function should be used with caution.

Author(s)

Thomas W. Yee

See Also

Links, loglink.

Examples

powerlink("a", power = 2, short = FALSE, tag = TRUE)
powerlink(x <- 1:5)
powerlink(x, power = 2)
max(abs(powerlink(powerlink(x, power = 2),
                  power = 2, inverse = TRUE) - x))  # Should be 0
powerlink(x <- (-5):5, power = 0.5)  # Has NAs

# 1/2 = 0.5
pdata <- data.frame(y = rbeta(n = 1000, shape1 = 2^2, shape2 = 3^2))
fit <- vglm(y ~ 1, betaR(lshape1 = powerlink(power = 0.5), i1 = 3,
                         lshape2 = powerlink(power = 0.5), i2 = 7), data = pdata)
t(coef(fit, matrix = TRUE))
Coef(fit)  # Useful for intercept-only models
vcov(fit, untransform = TRUE)

VGAM documentation built on Sept. 18, 2024, 9:09 a.m.