posteriorWeights {BMAmevt} R Documentation

## Posterior model weights

### Description

Approximates the models' posterior weights by simple Monte Carlo integration

### Usage

```posteriorWeights(
dat,
HparList = list(get("pb.Hpar"), get("nl.Hpar")),
lklList = list(get("dpairbeta"), get("dnestlog")),
priorList = list(get("prior.pb"), get("prior.nl")),
priorweights = c(0.5, 0.5),
Nsim = 20000,
Nsim.min = 10000,
precision = 0.05,
seed = 1,
kind = "Mersenne-Twister",
show.progress = floor(seq(1, Nsim, length.out = 10)),
displ = FALSE
)
```

### Arguments

 `dat` The angular data set relative to which the marginal model likelihood is to be computed `HparList` A list containing the hyper Parameter for the priors in each model. (list of lists). `lklList` A list containing the likelihood functions of each model `priorList` A list containing the prior definitions of each model. `priorweights` A vector of positive weights, summing to one: the prior marginal weights of each model. `Nsim` The maximum number of iterations to be performed. `Nsim.min` The minimum number of iterations to be performed. `precision` the desired relative precision. See `MCpriorIntFun`. `seed` The seed to be set via `set.seed`. `kind` The kind of random numbers generator. Default to "Mersenne-Twister". See `set.seed` for details. `show.progress` An vector of integers containing the times (iteration numbers) at which a message showing progression will be printed on the standard output. `displ` Logical. Should convergence monitoring plots be issued ?

### Details

if J is the number of models, the posterior weights are given by

postW(i) = priorW(i)*lkl(i)/ (∑_{j=1,…,J} priorW(j)*lkl(j)),

where lkl(i) stands for the Monte-Carlo estimate of the marginal likelihood of model i and priorW(i) is the prior weight defined in `priorweights[i]`. For more explanations, see the reference below The confidence intervals are obtained by adding/subtracting two times the estimated standard errors of the marginal likelihood estimates. The latter are only estimates, which interpretation may be misleading: See the note in section `marginal.lkl`

### Value

A matrix of 6 columns and `length(priorweights)` rows. The columns contain respectively the posterior model weights (in the same order as in `priorweights`), the lower and the upper bound of the confidence interval (see Details), the marginal model weights, the estimated standard error of the marginal likelihood estimators, and the number of simulations performed.

### References

HOETING, J., MADIGAN, D., RAFTERY, A. and VOLINSKY, C. (1999). Bayesian model averaging: A tutorial. Statistical science 14, 382-401.

### Examples

```data(pb.Hpar)
data(nl.Hpar)
set.seed(5)
mixDat=rbind(rpairbeta(n=10,dimData=3, par=c(0.68,3.1,0.5,0.5)),
rnestlog(n=10,par=c(0.68,0.78, 0.3,0.5)))
posteriorWeights (dat=mixDat,
HparList=list(get("pb.Hpar"),get("nl.Hpar")),
lklList=list(get("dpairbeta"), get("dnestlog")),
priorList=list(get("prior.pb"), get("prior.nl")),
priorweights=c(0.5,0.5),
Nsim=1e+3,
Nsim.min=5e+2, precision=0.1,
displ=FALSE)
## Not run: posteriorWeights (dat=mixDat,
HparList=list(get("pb.Hpar"),get("nl.Hpar")),
lklList=list(get("dpairbeta"), get("dnestlog")),
priorList=list(get("prior.pb"), get("prior.nl")),
priorweights=c(0.5,0.5),
Nsim=20e+3,
Nsim.min=10e+3, precision=0.05,
displ=TRUE)
## End(Not run)
```

[Package BMAmevt version 1.0.4 Index]