Description Usage Arguments Details Value Warning Note Author(s) See Also Examples

View source: R/contsDistQlinks.R

Computes the `benini1Qlink`

transformation, its inverse and the
first two derivatives.

1 2 3 4 |

`theta` |
Numeric or character. See below for further details. |

`p` |
Numeric. A single value between 0.0 and 1.0.
It is the |

`y0` |
Same as |

`bvalue, inverse, deriv, short, tag` |
See |

This is a link function to model any *p*–quantile of the
1–parameter Benini distribution. It is called the
`benini1Qlink`

transformation defined as

*
log y0 + ( -log(1 - p)/s )^(1/2),
*

where *y0 > 0* is a scale parameter and *s* is
a positive shape parameter, as in `benini1`

.

Numerical values of *s* or *p* out of range may
result in `Inf`

, `-Inf`

, `NA`

or `NaN`

.

In particular, arguments `inverse`

and `deriv`

are
disregarded if `theta`

is character.

For `deriv = 0`

, the `benini1Qlink`

transformation of
`theta`

, when inverse = FALSE. If `inverse = TRUE`

, then
the inverse transformation given by
`-log(1 - p) / (theta - log y0)^2`

is returned.

For `deriv = 1`

, this function returns the derivative
*d* `eta`

/ *d* `theta`

,
if `inverse = FALSE`

. Else, the reciprocal
*d* `theta`

/ *d* `eta`

as a function of `theta`

.

If deriv = 2, then the second order derivatives in terms of
`theta`

are accordingly returned.

The horizontal straight line *log y0* is a lower asymptote
for this link function as *theta* increases to *∞*.
Thus, when `inverse = TRUE`

and `deriv = 0`

entries at
`theta`

becoming *η* must be greater than
*log y0*. Else, `NaN`

will be returned.
See examples 2 and 3 below.

Numerical instability may occur for values `theta`

too close
to zero or lower than *\log y0*.
Use argument `bvalue`

to replace them before computing the link.

V. Miranda and Thomas W. Yee.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | ```
## E1. benini1Qlink() and its inverse ##
p <- 0.50; y0 = 1.25 ## Modeling the median
my.s <- seq(0, 5, by = 0.1)[-1]
max(my.s - benini1Qlink(benini1Qlink(my.s, p = p, y0 = y0),
p = p, y0 = y0, inverse =TRUE)) ## Zero
## E2. Plot of the benini1Qlink() transformation and its inverse ##
## Note, inverse = TRUE implies that argument 'theta' becomes 'eta'. ##
## which must be greater than log(y0). Else, value less than log(y0) ##
## are replaced by NaN. ##
#--- THE LINK
my.b <- seq(0, 5, by = 0.01)[-1]
plot(benini1Qlink(theta = my.b, p = p, y0 = y0) ~ my.b,
type = "l", col = "blue", lty = "dotted", lwd = 3,
xlim = c(-0.1, 6), ylim = c(-0.1, 5), las = 1,
main = c("Blue is benini1Qlink(), green is the inverse"),
ylab = "eta = benini1Qlink", xlab = "theta")
abline(h = 0, v = 0, lwd = 2)
#--- THE INVERSE
lines(my.b, benini1Qlink(theta = my.b, p = p, y0 = y0, inv = TRUE),
col = "green", lwd = 2, lty = "dashed")
#--- Tracing the identity function for double--check
lines(my.b, my.b)
## E3. WARNING! The first two values are less than log(y0) ##
benini1Qlink(theta = c(0.10, 0.15, 0.25, 0.35) , p = p, y0 = y0, inverse = TRUE)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.