A tool that supports one-button reproducible workflows with the Jupyter Notebook and Scons. Note: this currently only supports Python kernels.
UPDATE: Scons >= 3.0.0 now supports Python 3 so Python 2 isn't needed anymore! Now Nbflow and Scons are both Python 2 and 3 compatible so you can choose whichever you want.
The actual version of Scons (3.0.1) currently supports Python >= 3.5, which is the default in Ubuntu 16.04
To install, run:
Linux:
pip3 install git+git://github.com/jhamrick/nbflow.git
Windows:
pip install git+git://github.com/jhamrick/nbflow.git
For a complete example of how to use nbflow, check out the example in this repository.
You can now you Binder to check the example online:
cd nbflow/example
scons
results
directoryOptionally you can modify the notebook in this online environment and check how the results change.
For each notebook that you want executed, you MUST include two special variables in the first code cell:
__depends__
-- a list of relative paths to files that the notebook depends on__dest__
-- either a relative path, or list of relative paths, to files that the notebook producesFor example, the first cell in one of the example notebooks is:
__depends__ = ["../results/data.json"] __dest__ = "../results/stats.json"
You need a SConstruct
file in the root of you analysis directory. In this SConstruct
file you will need to import nbflow and use it to setup your scons environment, e.g.:
import os from nbflow.scons import setup env = Environment(ENV=os.environ) setup(env, ["analyses"])
The second argument of the setup
command takes a list of folder names that contain analysis notebooks.
Once you have setup your analysis notebooks and your SConstruct
file, you can run your notebooks by just running the scons
command from the root of your analysis directory.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4