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

Uploaded Source

Built Distribution

nutsflow-1.0.38-py2.py3-none-any.whl (46.1 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: nutsflow-1.0.38.tar.gz
  • Upload date:
  • Size: 46.6 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.38.tar.gz
Algorithm Hash digest
SHA256 b267f365584f7d60abbb055a2818b3a0ffba503a520f622e3bda830151ae4940
MD5 e845d90359ab61bc06e5d08bd316fd87
BLAKE2b-256 b8efea67fd226a6af0238ead494a350decf4f4569a5d777d3ae762713122ef89

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nutsflow-1.0.38-py2.py3-none-any.whl
  • Upload date:
  • Size: 46.1 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.38-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9908e081abe9af068e8b0e6d52fa79f5c6f08b4921b28417fdea63dd001f343c
MD5 337a75beda1be81df1b007d71cbf06b4
BLAKE2b-256 d62a8caf20941a79111381789d70de206eade42d39ad39146c7c6c7a5ec7adad

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