beta.ab {VGAM} | R Documentation

## The Two-parameter Beta Distribution Family Function

### Description

Estimation of the shape parameters of the two-parameter beta distribution.

### Usage

    beta.ab(lshape1="loge", lshape2="loge",
            eshape1=list(), eshape2=list(),
            i1 = NULL, i2 = NULL, trim = 0.05,
            A = 0, B = 1, parallel=FALSE, zero=NULL)

### Arguments

`lshape1, lshape2` | Parameter link functions applied to the two shape parameters. See `Links` for more choices. The log link (defaults) ensures that the parameters are positive.
`eshape1, eshape2` | List. Extra argument for the links. See `earg` in `Links` for general information.
`i1, i2` | Initial value for the first and second shape parameters respectively. A `NULL` value means it is obtained in the `initialize` slot.
`trim` | An argument which is fed into `mean()`; it is the fraction (0 to 0.5) of observations to be trimmed from each end of the response `y` before the mean is computed. This is used when computing initial values, and guards against outliers.
`A, B` | Lower and upper limits of the distribution. The defaults correspond to the standard beta distribution where the response lies between 0 and 1.
`parallel, zero` | See `CommonVGAMffArguments` for more information.

### Details

The two-parameter beta distribution is given by f(y) =

(y-A)^(shape1-1) * (B-y)^(shape2-1) / [Beta(shape1,shape2) * (B-A)^(shape1+shape2-1)]

for A < y < B, and Beta(.,.) is the beta function (see `beta`). The shape parameters are positive, and here, the limits A and B are known. The mean of Y is E(Y) = A + (B-A) * shape1 / (shape1 + shape2), and these are the fitted values of the object.

For the standard beta distribution the variance of Y is shape1 * shape2 / ((1+shape1+shape2) * (shape1+shape2)^2). If σ^2= 1 / (1+shape1+shape2) then the variance of Y can be written mu*(1-mu)*sigma^2 where mu=shape1 / (shape1 + shape2) is the mean of Y.

Another parameterization of the beta distribution involving the mean and a precision parameter is implemented in `betaff`.

If A and B are unknown, then the VGAM family function `beta4()` can be used to estimate these too.

### Value

An object of class `"vglmff"` (see `vglmff-class`). The object is used by modelling functions such as `vglm`, `rrvglm` and `vgam`.

### Note

The response must have values in the interval (A, B). VGAM 0.7-4 and prior called this function `betaff`.

### Author(s)

Thomas W. Yee

### References

Johnson, N. L. and Kotz, S. and Balakrishnan, N. (1995) Chapter 25 of: Continuous Univariate Distributions, 2nd edition, Volume 2, New York: Wiley.

Gupta, A. K. and Nadarajah, S. (2004) Handbook of Beta Distribution and Its Applications, NY: Marcel Dekker, Inc.

Documentation accompanying the VGAM package at http://www.stat.auckland.ac.nz/~yee contains further information and examples.

### See Also

`betaff`, `Beta`, `genbetaII`, `betaII`, `betabin.ab`, `betageometric`, `betaprime`, `rbetageom`, `rbetanorm`, `kumar`, `beta4`.

### Examples

    y = rbeta(n=1000, shape1=exp(0), shape2=exp(1))
    fit = vglm(y ~ 1, beta.ab(lshape1="identity", lshape2="identity"),
               trace = TRUE, crit="c")
    fit = vglm(y ~ 1, beta.ab, trace = TRUE, crit="c")
    coef(fit, matrix=TRUE)
    Coef(fit)  # Useful for intercept-only models

    Y = 5 + 8 * y    # From 5 to 13, not 0 to 1
    fit = vglm(Y ~ 1, beta.ab(A=5, B=13), trace = TRUE)
    Coef(fit)
    c(mean(Y), head(fitted(fit)))

[Package VGAM version 0.7-9 Index]