Skip to main content

Machines and people collaborating together through Jupyter notebooks.

Project description

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 hyperparameters 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

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

nbtransom-1.0.1.tar.gz (4.2 kB view hashes)

Uploaded source

Built Distribution

nbtransom-1.0.1-py3-none-any.whl (6.2 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