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.

Source Distribution

nutsflow-1.0.36.tar.gz (45.9 kB view details)

Uploaded Source

Built Distribution

nutsflow-1.0.36-py2.py3-none-any.whl (45.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file nutsflow-1.0.36.tar.gz.

File metadata

  • Download URL: nutsflow-1.0.36.tar.gz
  • Upload date:
  • Size: 45.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for nutsflow-1.0.36.tar.gz
Algorithm Hash digest
SHA256 dff18ab0a7c482e5c70cf8b46e33354f103bd730a0243f90b7be03373bc4750c
MD5 448277b89d82911c86d521865ecaf1b9
BLAKE2b-256 2470e9c95b995840692d8732f993617d166c09c5054694066f3d057ed683b773

See more details on using hashes here.

File details

Details for the file nutsflow-1.0.36-py2.py3-none-any.whl.

File metadata

  • Download URL: nutsflow-1.0.36-py2.py3-none-any.whl
  • Upload date:
  • Size: 45.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for nutsflow-1.0.36-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f81e4b19f0358f28d5d00d25ce401ca6f3711ad91a5f3459c01ae6207551560b
MD5 c8aaeb00fcfb65a8cfb389dc1945596f
BLAKE2b-256 10592d432b97bae1525dd5648f605449d29df6afb9cb081bac5715ec19e77bac

See more details on using hashes here.

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