Skip to main content

image0 image1 image2 image4

Drain is a lightweight framework for writing reproducible data science workflows in Python. The core features are:

  • Turn a Python workflow (DAG) into steps that can be run by a tool like make.

  • Transparently pass the results of one step as the input to another, handling any caching that the user requests using efficient tools like HDF and joblib.

  • Enable easy parallel execution of workflows.

  • Execute only those steps that are determined to be necessary based on timestamps (both source code and data) and dependencies, virtually guaranteeing reproducibility of results and efficient development.

Drain is designed around these principles:

  • Simplicity: drain is very lightweight and easy to use. The core is just a few hundred lines of code. The steps you write in drain get executed with minimal overhead, making drain workflows easy to debug and manage.

  • Reusability: Drain leverages mature tools drake to execute workflows. Drain provides a library of steps for data science workflows including feature generation and selection, model fitting and comparison.

  • Generality: Virtually any workflow can be realized in drain. The core was written with extensibility in mind so new storage backends and job schedulers, for example, will be easy to incorporate.

Release files for drain 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for drain 0.0.6
File Size Uploaded
drain-0.0.6.tar.gz 117.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for drain 0.0.6
File Interpreter ABI Platform
drain-0.0.6-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 166.5 kB

Release files / drain-0.0.6.tar.gz

Download URL drain-0.0.6.tar.gz
Size 117.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7b6dbeaa76d500921f1f8d06f8b80b3bdff765d85e003c59b69d2e86cb0f89c9
BLAKE2b-256 checksum
How to use checksums
c2fdb9691408743365989dba62a73386e78e14ea32fecc20e731caa766f28949
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / drain-0.0.6-py2.py3-none-any.whl

Download URL drain-0.0.6-py2.py3-none-any.whl
Size 49.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
5f3420bf9c6f42e12d293f7ddc3f5610799446c8cb73bdd9fee726bbe9fe44f6
BLAKE2b-256 checksum
How to use checksums
8e45f3be7d94e44439917b3138c7605b77301a10f866fec91ad2e3bc34657f11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.4

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page