Description Usage Arguments Details Value Author(s) References See Also Examples
The bugs
function takes data and starting values as input. It
automatically writes a MultiBUGS script, calls the model, and saves
the simulations for easy access in R.
1 2 3 4 5 6 7 8 9 | bugs(data, inits, parameters.to.save, n.iter, model.file = "model.txt",
fix.founders = TRUE, n.chains = 3, n.burnin = floor(n.iter/2),
n.thin = 1, n.workers = detectCores() - 1, saveExec = FALSE,
restart = FALSE, debug = FALSE, DIC = TRUE, digits = 5,
codaPkg = FALSE, MultiBUGS.pgm = NULL, working.directory = NULL,
clearWD = FALSE, useWINE = FALSE, WINE = NULL, newWINE = TRUE,
WINEPATH = NULL, bugs.seed = 1, summary.only = FALSE,
save.history = (.Platform$OS.type == "windows" | useWINE == TRUE),
over.relax = FALSE)
|
data |
either a named list (names corresponding to variable names in
the |
inits |
a list with |
parameters.to.save |
character vector of the names of the parameters to save which should be monitored |
n.iter |
number of total iterations per chain (including burn in; default: 2000) |
model.file |
File containing the model written in MultiBUGS code.
The extension must be ‘.txt’. The default location is given by
|
fix.founders |
If TRUE, If the fix founder box is checked instead of generating initial values for founder nodes (nodes of topological depth one in the graphical model) the values of therse nodes is set to the mean of their prior. |
n.chains |
number of Markov chains (default: 3) |
n.burnin |
length of burn in, i.e. number of iterations to discard at
the beginning. Default is |
n.thin |
Thinning rate. Must be a positive integer. The default is
The thinning is implemented in the MultiBUGS update phase, so thinned
samples are never stored, and they are not counted in |
n.workers |
Number of workers to distribute computation within
MultiBUGS across. By default one core fewer than detected by
|
saveExec |
If TRUE, a re-startable image of the MultiBUGS execution is
saved with |
restart |
If TRUE, execution resumes with the final status from the
previous execution stored in the .bug file in the working directory. If
|
debug |
if |
DIC |
logical; if |
digits |
number of significant digits used for MultiBUGS input,
see |
codaPkg |
logical; if |
MultiBUGS.pgm |
For Windows or WINE execution, the full path to the
MultiBUGS executable. For linux execution, the full path to the MultiBUGS
executable or shell script (the path to the shell script is not required if
the MultiBUGS shell script is in the user's PATH variable). If |
working.directory |
sets working directory during execution of this
function; MultiBUGS' input and output will be stored in this
directory; if |
clearWD |
logical; indicating whether the files ‘data.txt’,
‘inits[1:n.chains].txt’, ‘log.odc’, ‘codaIndex.txt’, and
‘coda[1:nchains].txt’ should be removed after MultiBUGS has
finished. If set to |
useWINE |
logical; attempt to use the Wine emulator to run
MultiBUGS. Default is |
WINE |
Character, path to ‘wine’ binary file, it is tried hard (by
a guess and the utilities |
newWINE |
Use new versions of Wine that have ‘winepath’ utility |
WINEPATH |
Character, path to ‘winepath’ binary file, it is tried
hard (by a guess and the utilities |
bugs.seed |
[This is not currently honoured by R2MultiBUGS.] Random seed for MultiBUGS. Must be an integer between 1-14. Seed specification changed between WinBUGS and OpenBUGS; see the MultiBUGS documentation for details. |
summary.only |
If |
save.history |
If |
over.relax |
If |
To run:
Write a BUGS model in an ASCII file (hint:
use write.model
).
Go into R.
Prepare the inputs for the bugs
function and run it (see
Example section).
An MultiBUGS window will pop up and will freeze up. The model will now run in MultiBUGS. It might take awhile. You will see things happening in the Log window within MultiBUGS. When MultiBUGS is done, its window will close and R will work again.
If an error message appears, re-run with debug=TRUE
.
BUGS version support:
MultiBUGS >=1.0
Operation system support:
MS Windows no problem
Linux, intel processors GUI display and graphics not available.
Mac OS X and Unix in general possible with Wine emulation
via useWINE=TRUE
If useWINE=TRUE
is used, all paths (such as working.directory
and model.file
, must be given in native (Unix) style, but
MultiBUGS.pgm
can be given in Windows path style (e.g.
“c:/Program Files/MultiBUGS/”) or native (Unix) style
(e.g.
“/path/to/wine/folder/dosdevices/c:/Program
Files/MultiBUGS/MultiBUGS321/MultiBUGS.exe”).
If codaPkg=TRUE
the returned values are the names of coda output
files written by OpenBUGS containing the Markov Chain Monte Carlo
output in the CODA format. This is useful for direct access with
read.bugs
.
If codaPkg=FALSE
, the following values are returned:
n.chains |
see Section ‘Arguments’ |
n.iter |
see Section ‘Arguments’ |
n.burnin |
see Section ‘Arguments’ |
n.thin |
see Section ‘Arguments’ |
n.keep |
number of iterations kept per chain (equal to
|
n.sims |
number of posterior simulations (equal to
|
sims.array |
3-way array of simulation output, with dimensions
|
sims.list |
list of simulated parameters:
for each scalar parameter, a vector of length n.sims
for each vector parameter, a 2-way array of simulations,
for each matrix parameter, a 3-way array of simulations, etc.
(for convenience, the |
sims.matrix |
matrix of simulation output, with
|
summary |
summary statistics and convergence information for each saved parameter. |
mean |
a list of the estimated parameter means |
sd |
a list of the estimated parameter standard deviations |
median |
a list of the estimated parameter medians |
root.short |
names of argument |
long.short |
indexes; programming stuff |
dimension.short |
dimension of |
indexes.short |
indexes of |
last.values |
list of simulations from the most recent iteration; they can be used as starting points if you wish to run OpenBUGS for further iterations |
pD |
an estimate of the effective number of parameters, for calculations see the section “Arguments”. |
DIC |
|
Andrew Gelman, gelman@stat.columbia.edu; modifications and packaged by Sibylle Sturtz, sturtz@statistik.tu-dortmund.de, Uwe Ligges, and Neal Thomas
Gelman, A., Carlin, J.B., Stern, H.S., Rubin, D.B. (2003): Bayesian Data Analysis, 2nd edition, CRC Press.
Sturtz, S., Ligges, U., Gelman, A. (2005): R2WinBUGS: A Package for Running WinBUGS from R. Journal of Statistical Software 12(3), 1-16.
print.bugs
, plot.bugs
, as well as
coda and BRugs packages
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | ## Not run:
# An example model file is given in:
model.file <- system.file(package='R2MultiBUGS', 'model', 'schools.txt')
# Let's take a look:
#file.show(model.file)
# Some example data (see ?schools for details):
data(schools)
schools
J <- nrow(schools)
y <- schools$estimate
sigma.y <- schools$sd
data <- list ('J', 'y', 'sigma.y')
inits <- function(){
list(theta=rnorm(J, 0, 100), mu.theta=rnorm(1, 0, 100),
sigma.theta=runif(1, 0, 100))
}
## or alternatively something like:
# inits <- list(
# list(theta=rnorm(J, 0, 90), mu.theta=rnorm(1, 0, 90),
# sigma.theta=runif(1, 0, 90)),
# list(theta=rnorm(J, 0, 100), mu.theta=rnorm(1, 0, 100),
# sigma.theta=runif(1, 0, 100))
# list(theta=rnorm(J, 0, 110), mu.theta=rnorm(1, 0, 110),
# sigma.theta=runif(1, 0, 110)))
parameters <- c('theta', 'mu.theta', 'sigma.theta')
## You may need to specify 'MultiBUGS.pgm'
## also you need write access in the working directory:
schools.sim <- bugs(data, inits, parameters, model.file,
n.chains=3, n.workers = 2, n.iter=5000)
print(schools.sim)
plot(schools.sim)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.