Skip to main content

A simple data-flow framework based on iterator chaining

Project description

pics/nutsflow_logo.gif

nuts-flow is largely a thin wrapper around Python’s itertools that allows the chaining of iterators using the >> operator. This leads to more readable code that highlights the flow of data. The following example shows two implementations of a simple data processing pipeline; the first based on itertools and the second using nuts-flow:

>>> from itertools import islice, ifilter
>>> list(islice(ifilter(lambda x: x > 5, xrange(10)), 3))
[6, 7, 8]
>>> from nutsflow import Range, Filter, Take, Collect, _
>>> Range(10) >> Filter(_ > 5) >> Take(3) >> Collect()
[6, 7, 8]

Both examples extract the first three numbers within range [0, 9] that are greater than five. However, the nuts-flow pipeline is easier to understand than the nested itertools code.

nuts-flow is the base for nuts-ml, which is described here .

https://badge.fury.io/py/nutsflow.svg https://img.shields.io/pypi/pyversions/nutsflow.svg https://travis-ci.org/maet3608/nuts-flow.svg?branch=master https://coveralls.io/repos/github/maet3608/nuts-flow/badge.svg?branch=master https://img.shields.io/github/issues/maet3608/nuts-flow.svg https://img.shields.io/badge/license-Apache%202-blue.svg

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for nutsflow, version 1.0.35
Filename, size File type Python version Upload date Hashes
Filename, size nutsflow-1.0.35-py2.py3-none-any.whl (45.4 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size nutsflow-1.0.35.tar.gz (45.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page