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.35.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

nutsflow-1.0.35-py2.py3-none-any.whl (45.4 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: nutsflow-1.0.35.tar.gz
  • Upload date:
  • Size: 45.7 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.35.tar.gz
Algorithm Hash digest
SHA256 e1d03b767a04db9160033e878b72389a8e76e9bdadc0067704d015620760b8f6
MD5 fec8043419ad82bd8c256197b60d0291
BLAKE2b-256 39a3a505720dc5787299fb0c4624042b67c7c0d32ac965b2eddbee7e438d44fb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nutsflow-1.0.35-py2.py3-none-any.whl
  • Upload date:
  • Size: 45.4 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.35-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 887de83fe761be2891bd3e9eb88705d4d99bac85b15ffc3f7595961dc54c5a00
MD5 d5252ef74f03d8b8f57672b9ad0628cf
BLAKE2b-256 b46d82eeeb73357ea67f81253c51dda2ec3a137e512d07fbea3fa3a71ee3f3f9

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