Skip to main content

Batteries-included Bayesian analysis template

Project description

Bibat: Batteries-Included Bayesian Analysis Template

Documentation Status Tox Test end-to-end Project Status: Active – The project has reached a stable, usable state and is being actively developed. Supported Python versions: 3.11 and newer pyOpenSci

Bibat is a Python package providing a flexible interactive template for Bayesian statistical analysis projects.

It aims to make it easier to create software projects that implement a Bayesian workflow that scales to arbitrarily many inter-related statistical models, data transformations, inferences and computations. Bibat also aims to promote software quality by providing a modular, automated and reproducible project that takes advantage of and integrates together the most up to date statistical software.

Bibat comes with "batteries included" in the sense that it creates a working example project, which the user can adapt so that it implements their desired analysis. We believe this style of template makes for better usability and easier testing of Bayesian workflow projects compared with the alternative approach of providing an incomplete skeleton project.

Documentation

Check out bibat's documentation at https://bibat.readthedocs.io.

In particular, you may find it useful to have a look at [this vignette](https:// bibat.readthedocs.io/en/latest/_static/report.html) that demonstrates, step by step, how to use bibat to implement a complex statistical analysis.

How to use bibat

To start a Bayesian statistical analysis project using bibat, first install copier, for example like this:

$ pipx install copier

Now choose a directory name for your analysis, for example my_cool_project, and copy bibat's example project there:

$ copier copy gh:teddygroves/bibat my_cool_project

This will trigger an interactive questionnaire and then create a brand new, custom, batteries-included, Bayesian analysis project in the directory my_cool_project. See bibat's documentation for what to do next.

If you want to use bibat's Python code separately from the template, you can install it to your python environment as follows:

$ pip install bibat

To install bibat with development dependencies:

$ pip install bibat'[development]'

Dependencies

Bibat requires Python version 3.11 or greater.

Bibat's Python dependencies can be found in its pyproject.toml file.

Bibat's Python dependencies:

  • arviz
  • cmdstanpy
  • copier
  • numpy
  • pandas
  • pandera
  • pydantic
  • scikit-learn
  • stanio
  • toml
  • xarray
  • zarr

Bibat's development dependencies (install these by running pip install bibat'[development]'):

  • black
  • pre-commit
  • codecov
  • mkdocs
  • mkdocs-material
  • mkdocstrings
  • mkdocstrings-python
  • pymdown-extensions
  • pytest
  • pytest-cov
  • tox
  • ruff

Projects created by bibat have Python dependencies listed in their pyproject.toml file. The additional ones are as follows:

  • bibat
  • jupyter

In addition, the following Python packages may be installed, depending on how the user answers bibat's questionnaire:

  • sphinx

Bibat projects also depend on cmdstan, the command line interface to Stan. Bibat projects include code that installs cmdstan when you run the command make analysis from the root of the target project. To only install dependencies, you can also run the command make env.

If bibat fails to install cmdstan, please raise an issue! The relevant parts of the cmdstan and cmdstanpy documentation might also be useful.

Target project dependencies: Quarto

Bibat supports automatic generation of documentation using either Sphinx or Quarto. Whereas bibat will install Sphinx automatically, Quarto must be installed manually: see the quarto documentation for instructions.

Citation information

If you would like to cite bibat using bibtex please use the following format:

  @software{bibat,
    doi = {10.5281/zenodo.7775328},
    url = {https://github.com/teddygroves/bibat},
    year = {2023},
    author = {Teddy Groves},
    title = {Bibat: batteries-included Bayesian analysis template},
  }

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bibat-0.3.4.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

bibat-0.3.4-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file bibat-0.3.4.tar.gz.

File metadata

  • Download URL: bibat-0.3.4.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for bibat-0.3.4.tar.gz
Algorithm Hash digest
SHA256 9e406d200093aff6dc88d202d7c9dcdd99c30ef2ef10bf0426b410d579cab5d5
MD5 96c6a5fc5e7c0b449046ee7bfb605bb7
BLAKE2b-256 dfbfbd01f76ef80f536247d3d675ff9bdc8dc6aa9f51bfb410566a53f16a35f5

See more details on using hashes here.

File details

Details for the file bibat-0.3.4-py3-none-any.whl.

File metadata

  • Download URL: bibat-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for bibat-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 1b263c4b5112f5b1f4749c65309ccd24d493d789de29ab2d151ac20d63f60765
MD5 699521d80bbf26011b683457b7c792fd
BLAKE2b-256 b5744cba55f1d835bd7ec22ff87cc8d4619d5e19ae957072a4ff22141a7b34c3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page