Skip to content

biomarkersParkinson/paradigma

Repository files navigation

ParaDigMa logo

Badges
Packages and Releases Latest release PyPI Static Badge
DOI DOI
Build Status Build and test pages-build-deployment
License GitHub license

Introduction

The Parkinsons Disease Digital Markers (ParaDigMa) toolbox is a Python software package designed for processing passively collected wrist sensor data to extract digital measures of motor and non-motor signs of Parkinson's disease (PD).

Specifically, the toolbox contains three data processing pipelines: (1) arm swing during gait, (2) tremor, and (3) heart rate analysis. Furthermore, the toolbox contains general functionalities for signal processing and feature extraction, such as filtering, peak detection, and spectral analysis. The toolbox is designed to be user-friendly and modular, enabling researchers to easily extend the toolbox with new algorithms and functionalities. The toolbox is accompanied by a set of example scripts and notebooks for each domain that demonstrate how to use the toolbox for processing sensor data and extracting digital measures.

It contains functionalities for processing the following sensor types:

  • Inertial Measurement Units (accelerometer, gyroscope)
  • Photoplethysmogram (PPG)

More about ParaDigMa

The components of ParaDigMa are visually shown in the diagram below.

Pipeline architeecture

Processes

ParaDigMa can best be understood by categorizing the sequential processes:

Process Description
Preprocessing Ensuring that the sensor data is ready for further processing
Feature extraction Creating features based on windowed views of the timestamps
Classification Making predictions using developed and validated classifiers
Quantification Selecting specific features of interest
Aggregation Aggregating the features at a specified time-level

Domain requirements

ParaDigMa can be used to extract aggregations related to a single or multiple domain(s). Each domain has its specific data requirements. Strict requirements for the domain are marked by X, soft requirements (for some additional functionalities) are marked by O.

Gait Tremor Heart Rate
Accelerometer X O
Gyroscope X X
PPG X

Installation

The package is available in PyPi and requires Python 3.10 or higher. It can be installed using:

pip install paradigma

Usage

See our extended documentation.

Development

Installation

The package requires Python 3.11 or higher. Use Poetry to set up the environment and install the dependencies:

poetry install

Testing

poetry run pytest

Type checking

poetry run pytype .

Building documentation

poetry run make html --directory docs/

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

The core team of ParaDigMa consists of Erik Post, Kars Veldkamp, Nienke Timmermans, Diogo Coutinho Soriano, Luc Evers, Peter Kok and Vedran Kasalica. Advisors to the project are Max Little, Jordan Raykov, Twan van Laarhoven, Hayriye Cagnan, and Bas Bloem. It is licensed under the terms of the Apache License 2.0 license.

Credits

ParaDigMa was created with cookiecutter and the py-pkgs-cookiecutter template.

Contact

For more information or questions about ParaDigMa, please reach out to erik.post@radboudumc.nl.