View source: R/family.aunivariate.R

betaR | R Documentation |

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

betaR(lshape1 = "loglink", lshape2 = "loglink", i1 = NULL, i2 = NULL, trim = 0.05, A = 0, B = 1, parallel = FALSE, zero = NULL)

`lshape1, lshape2, i1, i2` |
Details at |

`trim` |
An argument which is fed into |

`A, B` |
Lower and upper limits of the distribution.
The defaults correspond to the |

`parallel, zero` |
See |

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`

.

An object of class `"vglmff"`

(see `vglmff-class`

).
The object is used by modelling functions
such as `vglm`

,
`rrvglm`

and `vgam`

.

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

.

Thomas W. Yee

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*,
New York: Marcel Dekker.

`betaff`

,
`Beta`

,
`genbetaII`

,
`betaII`

,
`betabinomialff`

,
`betageometric`

,
`betaprime`

,
`rbetageom`

,
`rbetanorm`

,
`kumar`

,
`simulate.vlm`

.

bdata <- data.frame(y = rbeta(1000, shape1 = exp(0), shape2 = exp(1))) fit <- vglm(y ~ 1, betaR(lshape1 = "identitylink", lshape2 = "identitylink"), bdata, trace = TRUE, crit = "coef") fit <- vglm(y ~ 1, betaR, data = bdata, trace = TRUE, crit = "coef") coef(fit, matrix = TRUE) Coef(fit) # Useful for intercept-only models bdata <- transform(bdata, Y = 5 + 8 * y) # From 5 to 13, not 0 to 1 fit <- vglm(Y ~ 1, betaR(A = 5, B = 13), data = bdata, trace = TRUE) Coef(fit) c(meanY = with(bdata, mean(Y)), head(fitted(fit),2))

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.