Type: Package
Title: The Beta Random Number and Dirichlet Random Vector Generating Functions
Version: 1.0.1
Date: 2012-02-25
Description: Contains functions to generate random numbers from the beta distribution and random vectors from the Dirichlet distribution.
License: GPL-2
LazyLoad: yes
Packaged: 2024-11-04 21:03:07 UTC; hornik
Repository: CRAN
Date/Publication: 2024-11-04 21:11:01 UTC
NeedsCompilation: yes
Author: Ching-Wei Cheng [aut, cre], Ying-Chao Hung [aut], Narayanaswamy Balakrishnan [aut]
Maintainer: Ching-Wei Cheng <aks43725@gmail.com>

The Beta Random Number Generating Function

Description

Random generation for the beta distribution with parameters shape1 and shape2.

Usage

 rbeta(n, shape1, shape2)

Arguments

n

Number of beta random numbers to generate. If length(n) > 1, the length is taken to be the number required.

shape1, shape2

Positive shape parameters.

Details

The beta distribution with parameters shape1 = a and shape2 = b has density

\frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)} x^{a-1} (1-x)^{b-1}

for a > 0, b > 0 and 0 \le x \le 1.

The mean is \frac{a}{a+b} and the variance is \frac{ab}{(a+b)^2 (a+b+1)}.

rbeta basically utilizes the following guideline primarily proposed by Hung et al. (2009) for generating beta random numbers.

Value

rbeta generates beta random numbers.

Author(s)

Ching-Wei Cheng <aks43725@gmail.com>,
Ying-Chao Hung <hungy@nccu.edu.tw>,
Narayanaswamy Balakrishnan <bala@univmail.cis.mcmaster.ca>

Source

rbeta uses a C translation of

Y. C. Hung and N. Balakrishnan and Y. T. Lin (2009), Evaluation of beta generation algorithms, Communications in Statistics - Simulation and Computation, 38:750–770.

References

Y. C. Hung and N. Balakrishnan and Y. T. Lin (2009), Evaluation of beta generation algorithms, Communications in Statistics - Simulation and Computation, 38, 750–770.

H. Sakasegawa (1983), Stratified rejection and squeeze method for generating beta random numbers, Annals of the Institute Statistical Mathematics, 35, 291–302.

B.W. Schmeiser and A.J.G. Babu (1980), Beta variate generation via exponential majorizing functions, Operations Research, 28, 917–926.

H. Zechner and E. Stadlober (1993), Generating beta variates via patchwork rejection, Computing, 50, 1–18.

See Also

rbeta in package stats.

Examples

 library(rBeta2009)
 rbeta(10, 0.7, 1.5)

The Dirichlet Random Vector Generating Function

Description

The function to generate random vectors from the Dirichlet distribution.

Usage

 rdirichlet(n, shape)

Arguments

n

Number of Dirichlet random vectors to generate. If length(n) > 1, the length is taken to be the number required.

shape

Vector with length(shape) >= 2 containing positive shape parameters of the Dirichlet distribution. If length(shape) = 2, it reduces to the beta generating function.

Details

The Dirichlet distribution is the multidimensional generalization of the beta distribution.

A k-variate Dirichlet random vector (x_1,\ldots,x_k) has the joint probability density function

\frac{\Gamma(\alpha_1+\dots+\alpha_{k+1})}{\Gamma(\alpha_1)\dots\Gamma(\alpha_{k+1})} x_1^{\alpha_1-1}\dots x_k^{\alpha_k-1}\left(1-\sum_{i=1}^k x_i\right)^{\alpha_{k+1}-1},

where x_i \ge 0 for all i = 1, \ldots, k, \sum_{i=1}^k x_i \leq 1, and \alpha_1, \ldots, \alpha_{k+1} are positive shape parameters.

rdirichlet generates the Dirichlet random vector by utilizing the transformation method based on beta variates and three guidelines introduced by Hung et al. (2011). The three guidelines include: how to choose the fastest beta generation algorithm, how to best re-order the shape parameters, and how to reduce the amount of arithmetic operations.

Value

rdirichlet() returns a matrix with n rows, each containing a single Dirichlet random vector.

Author(s)

Ching-Wei Cheng <aks43725@gmail.com>,
Ying-Chao Hung <hungy@nccu.edu.tw>,
Narayanaswamy Balakrishnan <bala@univmail.cis.mcmaster.ca>

Source

rdirichlet uses a C translation of

Y. C. Hung and N. Balakrishnan and C. W. Cheng (2011), Evaluation of algorithms for generating Dirichlet random vectors, Journal of Statistical Computation and Simulation, 81, 445–459.

References

Y. C. Hung and N. Balakrishnan and C. W. Cheng (2011), Evaluation of algorithms for generating Dirichlet random vectors, Journal of Statistical Computation and Simulation, 81, 445–459.

See Also

rdirichlet in package MCMCpack.
rdirichlet in package gtools.

Examples

library(rBeta2009)
rdirichlet(10, c(1.5, 0.7, 5.2, 3.4))