Bayesian inference for state-space models with R
rbi is an R
interface to
libbi, a library for Bayesian inference.
It mainly contains:
- various functions to retrieve and process the results from libbi (which are in NetCDF format)
- a
bi_model
class, to manipulate libbi models - a
libbi
wrapper class, to perform Bayesian using libbi inference from within R,
Installation
The easiest way to install the latest stable version of rbi is via CRAN:
install.packages("rbi")
Alternatively, the current development version can be installed using
the remotes
package
# install.packages("remotes")
library("remotes")
install_github("sbfnk/rbi")
The rbi package has only been tested on GNU/Linux and OS X, but it
should mostly work everywhere R
works.
If you want to use rbi as a wrapper to LibBi then you need a working version of LibBi. To install LibBi on a Mac, the easiest way is to install Homebrew, followed by (using a command shell, i.e. Terminal or similar):
brew install libbi
On linux, follow the instructions provided with LibBi.
The path to libbi
script can be passed as an argument to rbi,
otherwise the package tries to find it automatically using the which
linux/unix command.
If you just want to process the output from LibBi, then you do not need to have LibBi installed.
Getting started
A good starting point is to look at the included demos:
demo(PZ_generate_dataset) ## generating a data set from a model
demo(PZ_PMMH) ## particle Markov-chain Metropolis-Hastings
demo(PZ_SMC2) ## SMC^2
demo(PZ_filtering) ## filtering
For further information, have a look at the introductory vignette from the link from the rbi CRAN package.
Using coda
LibBi contains the get_traces
method which provides an interface
to coda.
Other packages
For higher-level methods to interact with LibBi, have a look at rbi.helpers.