gibbsnorm {bayess} R Documentation

## Gibbs sampler for a generic mixture posterior distribution

### Description

This function implements the generic Gibbs sampler of Diebolt and Robert (1994) for producing a sample from the posterior distribution associated with a univariate mixture of k normal components with all 3k-1 parameters unknown.

### Usage

```gibbsnorm(niter, dat, mix)
```

### Arguments

 `niter` number of iterations in the Gibbs sampler `dat` mixture sample `mix` list defined as `mix=list(k=k,p=p,mu=mu,sig=sig)`, where `k` is an integer and the remaining entries are vectors of length `k`

### Details

Under conjugate priors on the means (normal distributions), variances (inverse gamma distributions), and weights (Dirichlet distribution), the full conditional distributions given the latent variables are directly available and can be used in a straightforward Gibbs sampler. This function is only the first step of the function `gibbs`, but it may be much faster as it avoids the computation of the evidence via Chib's approach.

### Value

 `k` number of components (superfluous) `mu` Gibbs sample of all mean parameters `sig` Gibbs sample of all variance parameters `p` Gibbs sample of all weight parameters `lopost` sequence of log-likelihood values along Gibbs iterations

### References

Chib, S. (1995) Marginal likelihood from the Gibbs output. J. American Statist. Associ. 90, 1313-1321.

Diebolt, J. and Robert, C.P. (1992) Estimation of finite mixture distributions by Bayesian sampling. J. Royal Statist. Society 56, 363-375.

`rdirichlet`, `gibbs`

### Examples

```data(datha)
datha=as.matrix(datha)
mix=list(k=3,mu=mean(datha),sig=var(datha))
res=gibbsnorm(10,datha,mix)
plot(res\$p[,1],type="l",col="steelblue3",xlab="iterations",ylab="p")

```

[Package bayess version 1.4 Index]