Skip to main content

ParSeq is a python software library for Parallel execution of Sequential data analysis.

Project description

Package ParSeq is a python software library for Parallel execution of Sequential data analysis. It implements a general analysis framework that consists of transformation nodes – intermediate stops along the data pipeline for data visualization, cross-data operations (e.g. taking average), providing user input and displaying status – and transformations that connect the nodes.

It provides an adjustable data tree model (supports grouping, renaming, moving and drag-and-drop arrangement), tunable data format definitions, plotters for 1D, 2D and 3D data, cross-data analysis routines and flexible widget work space suitable for single- and multi-screen computers. It also defines a structure to implement particular analysis pipelines as lightweight Python packages.

ParSeq is intended for synchrotron based techniques, first of all spectroscopy.

Main features

  • ParSeq allows creating analysis pipelines as lightweight Python packages.

  • Flexible use of screen area by detachable/dockable transformation nodes (parts of analysis pipeline).

  • Two ways of acting from GUI onto multiple data: (a) simultaneous work with multiply selected data and (b) copying a specific parameter or a group of parameters from active data items to later selected data items.

  • Undo and redo for most of treatment steps.

  • Entering into the analysis pipeline at any node, not only at the head of the pipeline.

  • Creation of cross-data combinations (e.g. averaging, PCA) and their propagation downstream the pipeline together with the parental data. The possibility of termination of the parental data at any selected downstream node.

  • General data correction routines for 1D data: range deletion, scaling, replacement by a spline, deletion of spikes and jump correction.

  • Parallel execution of data transformations with multiprocessing or multithreading (can be opted by the pipeline application).

  • Optional curve fitting solvers, also executed in parallel for multiple data items.

  • Informative error handling that provides alerts and stack traceback with the type and location of the occurred error.

  • Optional time profiling of the pipeline, as controlled by a command-line argument.

  • Export of the workflow into a project file. Export of data into various data formats with accompanied Python scripts that visualize the exported data in publication-quality plots.

  • ParSeq understands container files (presently only hdf5) and adds them to the system file tree as subfolders. The file tree, including hdf5 containers, is lazy loaded thus enabling big data collections.

  • A web viewer widget near each analysis widget displays help pages generated from the analysis widget doc strings. The help pages are built by Sphinx at the startup time.

  • The pipeline can be operated by the GUI or from a Python script without GUI.

  • Optional automatic loading of new data during a measurement time.

The mechanisms for creating nodes, transformations and curve fitting solvers, connecting them together and creating Qt widgets for the transformations and and curve fits are exemplified by separately installed analysis packages:

Installation

Install it by pip or conda or get ParSeq from GitHub and use it with or without installation. The documentation is available online on Read the Docs.

Launch an example

Either install ParSeq and a ParSeq pipeline application by their installers to the standard location or put them to any folder in their respective folders (parseq and e.g. parseq_XES_scan) and run the *_start.py module of the pipeline. You can try it with --help to explore the available options. An assumed usage pattern is to load a project .pspj file from GUI or from the starting command line.

Hosting and contact

The ParSeq project is hosted on GitHub. Please use the project’s Issues tab to get help or report an issue.

Citing ParSeq

Please cite ParSeq as: K Klementiev, “ParSeq: Python software for comparative data analysis pipelines”, J. Phys.: Conf. Ser. 3010 (2025) 012126; doi:10.1088/1742-6596/3010/1/012126.

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

parseq-2026.1.0.tar.gz (3.1 MB view details)

Uploaded Source

File details

Details for the file parseq-2026.1.0.tar.gz.

File metadata

  • Download URL: parseq-2026.1.0.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.14.2

File hashes

Hashes for parseq-2026.1.0.tar.gz
Algorithm Hash digest
SHA256 27bcd21cfc272201cb1a239862653be8a2f4071a30e9176a70c0421aa0603c9e
MD5 d0ae8a5334f246f8252ee14c5d1e5fc1
BLAKE2b-256 0c4226a7a6b6652fc5806a31b93251d32d61d98f2cd6dfa172db7340dbfd3b71

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page