Skip to main content

process data-trees with reconfigurable-paths

None None

Project description

doc/_static/pandalone_logo.png

pandalone: process data-trees with reconfigurable-paths

Development Status Travis build status Apveyor build status cover-status Documentation status Latest Version in PyPI Downloads Issues count Project License

Release:

0.1.0

Documentation:

https://pandalone.readthedocs.org/

Source:

https://github.com/pandalone/pandalone

PyPI repo:

https://pypi.python.org/pypi/pandalone

Keywords:

calculation, data, dependencies, engineering, excel, library, numpy, pandas, processing, python, resolution, scientific, simulink, tree, utility

Copyright:

2015 European Commission (JRC-IET)

License:

EUPL 1.1+

pandalone is an open source Python 2/3 library for building component-functions to process hierarchical-data using reconfigurable-paths.

Our goal is to facilitate the composition of engineering-models from loosely-coupled components. Initially envisioned as an indirection-framework around pandas coupled with a dependency-resolver, every such model should auto-adapt and process only values available, and allow remapping of the paths accessing them, to run on renamed/relocated value-trees without component-code modifications.

It is written for python-3.4 but tested under both python-2.7 and python-3.3+, for Windows and Linux.

Introduction

Overview

At the most fundamental level, an “execution” or a “run” of a processing can be thought like that

      .--------------.     _____________        .-------------.
     ;  DataTree    ;    |             |      ;   DataTree   ;
    ;--------------; ==> |  <cfunc_1>  | ==> ;--------------;
   ; /some/data   ;      |  <cfunc_2>  |    ; /some/data   ;
  ;  /some/other ;       |     ...     |   ;  /some/other ;
 ;   /foo/bar   ;        |_____________|  ;   /foo/bar   ;
'--------------'                         '--------------.
  • The data-tree might come from json, hdf5, excel-workbooks, or plain dictionaries and lists. Its values are strings and numbers, numpy-lists, pandas or xray-datasets, etc.

  • The component-functions must abide to the following simple signature:

    cfunc_do_something(pandelone, datatree)

    and must not return any value, just read and write into the data-tree.

  • Here is a simple component-function:

    def cfunc_standardize(pandelone, datatree):
        pin, pon = pandelone.paths(),
        df = datatree.get(pin.A)
        df[pon.A.B_std] = df[pin.A.B] / df[pin.A.B].std()
  • Notice the use of the reconfigurable-paths marked specifically as input or output.

  • TODO: continue rough example in tutorial…

Quick-start

Project details

None None

Download files

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

Source Distribution

pandalone-0.1.0.tar.gz (214.0 kB view hashes)

Uploaded Source

Built Distribution

pandalone-0.1.0-py2.py3-none-any.whl (80.7 kB view hashes)

Uploaded Python 2 Python 3

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