Skip to content
Machines and people collaborating together through Jupyter notebooks.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
nbtransom prep for PyPi release Jun 25, 2017
LICENSE Initial commit May 21, 2017
README.rst Update README.rst Aug 24, 2017
changelog.txt submitted to PyPi Jun 25, 2017


Active Learning with Jupyter Notebooks

This is a Python 3 library to read/write cells programmatically in Jupyter notebooks which anticipates upcoming collaborative features in Jupyter.

We use this at O'Reilly Media for notebooks used to manage machine learning pipelines. That is to say, machines and people collaborate on documents, implementing a "human-in-the-loop" design pattern:

  • people adjust parameters for the ML pipelines
  • machines write structured "logs" during ML modeling/evaluation
  • people run jupyter notebook via SSH tunnel for remote access

For more info about use cases for this library and active learning in general, see the JupyterCon 2017 talk Humans in the loop

Example Usage

The following script generates a Jupyter notebook in the test.ipynb file, then runs it:

jupyter notebook

Then launch the test.ipynb notebook and from the Cells menu select Run All to view results.

NB: whenever you use the put_df() function to store data as a Pandas dataframe be sure to include import pandas as pd at some earlier point in the notebook.

Dependencies and Installation

This code has dependencies on:

To install from PyPi:

pip install nbtransom

To install from this Git repo:

git clone
cd nbtransom
pip install -r requirements.txt


@htmartin @esztiorm @fperez @odewahn

You can’t perform that action at this time.