Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Bridging statistical cultures with some jazz

bossanova is a modern Python library for statistical modeling that runs on CPU, Web, and GPU (coming soon[1]). It’s designed to provide an intuitive and simple API with a familiar formula syntax for most kinds of Generalize Linear Models (like lm and glm in R) and Linear Mixed/Multilevel Models (lmer in R or MixedModels.jl in Julia). Everything works through single unified model() with familiar formula-based syntax, tight integration with polarsand seaborn, multiple inference strategies, and helpful diagnostics and visualizations.

Installation

uv add bossanova or pip install bossanova

bossanova also runs directly in your browser—no installation required! powered by Pyodide[2]

Footnotes
  1. bossanova uses JAX which natively supports GPUs, but only at float32 precision which is not precise enough to achieve statistical parity with current versions of lme4 in R, which is a strict part of our engineering infrastructure. In the future we plan to allow control over this setting in case you want to trade precision for speed.

  2. Pyodide 0.27+ required as older versions have a micropip bug. When running in the browser bossanova uses numpy instead of jax and scipy instead of scikit-sparse for computations. Everything works identically, but will be slower for larger and more complex models.