Power Link Function
Computes the power transformation, including its inverse and the first two derivatives.
powerlink(theta, power = 1, inverse = FALSE, deriv = 0, short = TRUE, tag = FALSE)
theta |
Numeric or character. See below for further details. |
power |
This denotes the power or exponent. |
inverse, deriv, short, tag |
Details at |
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.
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.
Numerical problems may occur for certain combinations of
theta
and power
.
Consequently this link function should be used with caution.
Thomas W. Yee
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)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.