/arviz

Exploratory analysis of Bayesian models with Python

Primary LanguagePythonApache License 2.0Apache-2.0

Build Status Coverage Status Code style: black

ArviZ

ArviZ (pronounced "AR-vees") is a Python package for exploratory analysis of Bayesian models. Includes functions for posterior analysis, model checking, comparison and diagnostics.

Documentation

The ArviZ documentation can be found in the official docs. First time users may find the quickstart to be helpful. Additional guidance can be found in the usage documentation.

Installation

The latest version can be installed from the master branch using pip:

pip install git+git://github.com/arviz-devs/arviz.git

Another option is to clone the repository and install using python setup.py install.


Ridge plot Parallel plot Trace plot Density plot
Posterior plot Joint plot Posterior predictive plot Pair plot
Energy Plot Violin Plot Forest Plot Autocorrelation Plot

Dependencies

ArviZ is tested on Python 3.5 and 3.6, and depends on NumPy, SciPy, xarray, and Matplotlib.

Contributions

ArviZ is a community project and welcomes contributions. Additional information can be found in the Contributing Readme

Developing

A typical development workflow is:

  1. Install project requirements: pip install -r requirements.txt
  2. Install additional testing requirements: pip install -r requirements-dev.txt
  3. Write helpful code and tests.
  4. Verify code style: ./scripts/lint.sh
  5. Run test suite: pytest arviz/tests
  6. Make a pull request.

There is also a Dockerfile which helps for isolating build problems and local development.

  1. Install Docker for your operating system
  2. Clone this repo,
  3. Run ./scripts/container.sh --build

This will build a local image with the tag arviz. After building the image tests can be executing by running docker run arviz. A shell can be started by running docker run arviz /bin/bash. The correct conda environment will be activated automatically.

Code of Conduct

ArviZ wishes to maintain a positive community. Additional details can be found in the Code of Conduct