Skip to main content

A lightweight Bayesian sampling package

Project description


A Python package collecting awesome MCMC sampling algorithms.
Explore the docs »

Examples | Report Bug | Request Feature

Table of Contents

Why use Racecar?

  • Racecar is a lightweight Python library for sampling distributions in high dimensions using cutting-edge algorithms. It can also be used for rapid prototyping of novel methods and application to large problems.
  • Pass a function evaluating the log posterior and/or its gradient, and away you go. Ideal for usage with big data applications, neural networks, regression, mixture modelling, and all sorts of Bayesian inference and sampling problems.
  • Easily to use and simple to extend with new methods and use cases.
  • Designed for use with stochastic gradients in mind.

Results from an inference experiment


Quickstart example

We will sample points from the one-dimensional distribution using the random walk Metropolis algorithm, and then plot the results.

# Import racecar and numpy
import racecar as rc
import numpy as np

# Define the target log posterior function
# Note we only need it up to a constant multiple, so we do not need to
# know its normalization constant.
def log_posterior(x):
  return {
  'llh' : -( np.cos(2*x) + x**2/12 )

# Create the sampler object and use Random Walk Metropolis
initial_condition = [0]
learning_rate = 0.5
S = rc.sampler(initial_condition, learning_rate, log_posterior, algo="RWMetropolis")

# Sample some points, outputting arrays of the position and the log posterior
number_of_points = 100000
Pos_traj, LLH_traj = S.sample(number_of_points, output=['pos','llh'])

# Plot the results using matplotlib


More examples

Some more detailed examples are given in the Jupyter notebooks below


You can install the package from source by cloning this repo and using, the only dependencies are on numpy and scipy. Otherwise it is available on pip via

pip install racecar


Distributed under the MIT License. See LICENSE for more information.


Made by Charles Matthews - -

Project Link:

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

racecar-0.0.9.tar.gz (12.5 kB view hashes)

Uploaded source

Built Distribution

racecar-0.0.9-py3-none-any.whl (16.9 kB view hashes)

Uploaded py3

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