BAyesian Model-Building Interface (Bambi) in Python#

Build Coverage

Bambi is a high-level Bayesian model-building interface written in Python. It works with two probabilistic programming frameworks, PyMC3 or PyStan, and is designed to make it extremely easy to fit Bayesian mixed-effects models common in biology, social sciences and other disciplines.

New Features#

Bambi version 0.1.1 will be the final version supporting Python 2, but look forward to the forthcoming Bambi version 0.1.2!

Dependencies#

Bambi is tested on Python 3.6 and depends on NumPy, Pandas, PyMC3, PyStan, Patsy and ArviZ (see requirements.txt for version information).

Installation#

The latest release of Bambi can be installed using pip:

pip install bambi

Alternatively, if you want the bleeding edge version of the package, you can install from GitHub:

pip install git+https://github.com/bambinos/bambi.git

Usage#

A simple fixed effects model is shown below as example.

from bambi import Model
import pandas as pd

# Read in a tab-delimited file containing our data
data = pd.read_table('my_data.txt', sep='\t')

# Initialize the model
model = Model(data)

# Fixed effects only model
results = model.fit('DV ~ IV1 + IV2', samples=1000, chains=4)

# Use ArviZ to plot the results
az.plot_trace(results)

# Key summary and diagnostic info on the model parameters
az.summary(results)

# Drop the first 100 samples (burn-in)
results_bi = results.sel(draw=slice(100, None))

For a more in-depth introduction to Bambi see our Quickstart or our set of example notebooks.

Contributing#

We welcome contributions from interested individuals or groups! For information about contributing to Bambi, check out our instructions, policies, and guidelines here.

Contributors#

See the GitHub contributor page.

Contents#

Indices#