making Bayesian modelling easy(er)
uravu
(from the Tamil for relationship) is about the relationship between some data and a function that may be used to describe the data.
The aim of uravu
is to make using the amazing Bayesian inference libraries that are available in Python as easy as scipy.optimize.curve_fit
.
Therefore enabling many more to make use of these exciting tools and powerful libraries.
Plus, we have some nice plotting functionalities available in the plotting
module, capable of generating publication quality figures.
In an effort to make the uravu
API friendly to those new to Bayesian inference, uravu
is opinionated, making assumptions about priors among other things.
However, we have endevoured to make it straightforward to ignore these opinions.
In addition to the library and API, we also have some basic tutorials discussing how Bayesian inference methods can be used in the analysis of data.
There are a couple of fantastic Bayesian inference libraries available in Python that uravu
makes use of:
- emcee: enables the use of the Goodman & Weare’s Affine Invariant Markov chain Monte Carlo (MCMC) Ensemble sampler to evaluate the structure of the model parameter posterior distributions,
- dynesty: implements the nested sampling algorithm for evidence estimation.
If you discover any issues with uravu
please feel free to submit an issue to our issue tracker on Github.
Alternatively, if you are feeling confident, fix the bug yourself and make a pull request to the main codebase (be sure to check out our contributing guidelines first).
uravu
is available from the PyPI repository so can be installed using pip
or alternatively clone
this repository and install the latest development build with the commands below.
pip install -r requirements.txt
python setup.py build
python setup.py install
pytest