dirichlet {hyper2} | R Documentation |
Dirichlet distribution and generalizations
Description
The Dirichlet distribution in likelihood (for p) form, including the generalized Dirichlet distribution due to Connor and Mosimann
Usage
dirichlet(powers, alpha)
GD(alpha, beta, beta0=0)
GD_wong(alpha, beta)
rdirichlet(n,H)
is.dirichlet(H)
rp_unif(n,H)
Arguments
powers |
In function |
alpha , beta |
A vector of parameters for the Dirichlet or generalized Dirichlet distribution |
beta0 |
In function |
H |
Object of class |
n |
Number of observations |
Details
These functions are really convenience functions.
Function rdirichlet()
returns random samples drawn from a
Dirichlet distribution. If second argument H
is a
hyper2
object, it is tested [with is.dirichlet()
] for
being a Dirichlet distribution. If so, samples from it are returned.
If not, (e.g. icons
), an error is given. If H
is not a
hyper2
object, it is interpreted as a vector of parameters
\alpha
[not a vector of powers].
Function rp_unif()
returns uniformly distributed vectors,
effectively using H*0
; but note that this uses Dirichlet
sampling which is much faster and better than the Metropolis-Hastings
functionality documented at rp.Rd
.
Functions GD()
and GD_wong()
return a likelihood
function corresponding to the Generalized Dirichlet distribution as
presented by Connor and Mosimann, and Wong, respectively. In
GD_wong()
, alpha
and beta
must be named vectors;
the names of alpha
give the names of
x_1,\ldots,x_k
and the last element of beta
gives the name of x_{k+1}
.
Note
A dirichlet distribution can have a term with zero power. But
this poses problems for hyper2
objects as zero power brackets
are dropped.
Author(s)
Robin K. S. Hankin
References
R. J. Connor and J. E. Mosimann 1969. “Concepts of independence for proportions with a generalization of the Dirichlet distribution”. Journal of the American Statistical Association, 64:194–206
T.-T. Wong 1998. “Generalized Dirichlet distribution in Bayesian Analysis”. Applied Mathematics and Computation, 97:165–181
See Also
Examples
x1 <- dirichlet(c(a=1,b=2,c=3))
x2 <- dirichlet(c(c=3,d=4))
x1+x2
H <- dirichlet(c(a=1,b=2,c=3,d=4))
rdirichlet(10,H)
colMeans(rdirichlet(1e4,H))