paradigma 0.4.0__tar.gz → 0.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. {paradigma-0.4.0 → paradigma-0.4.2}/PKG-INFO +31 -16
  2. {paradigma-0.4.0 → paradigma-0.4.2}/README.md +28 -11
  3. {paradigma-0.4.0 → paradigma-0.4.2}/pyproject.toml +10 -10
  4. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/pipelines/gait_pipeline.py +1 -1
  5. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/pipelines/tremor_pipeline.py +1 -1
  6. {paradigma-0.4.0 → paradigma-0.4.2}/LICENSE +0 -0
  7. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/__init__.py +0 -0
  8. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/assets/gait_detection_clf_package.pkl +0 -0
  9. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/assets/gait_filtering_clf_package.pkl +0 -0
  10. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/assets/ppg_quality_clf_package.pkl +0 -0
  11. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/assets/tremor_detection_clf_package.pkl +0 -0
  12. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/classification.py +0 -0
  13. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/config.py +0 -0
  14. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/constants.py +0 -0
  15. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/feature_extraction.py +0 -0
  16. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/pipelines/__init__.py +0 -0
  17. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/pipelines/heart_rate_pipeline.py +0 -0
  18. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/pipelines/heart_rate_utils.py +0 -0
  19. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/preprocessing.py +0 -0
  20. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/segmenting.py +0 -0
  21. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/testing.py +0 -0
  22. {paradigma-0.4.0 → paradigma-0.4.2}/src/paradigma/util.py +0 -0
@@ -1,48 +1,62 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: paradigma
3
- Version: 0.4.0
3
+ Version: 0.4.2
4
4
  Summary: Paradigma - a toolbox for Digital Biomarkers for Parkinson's Disease
5
5
  License: Apache-2.0
6
- Author: Peter Kok
7
- Author-email: p.kok@esciencecenter.nl
6
+ Author: Erik Post
7
+ Author-email: erik.post@radboudumc.nl
8
8
  Requires-Python: >=3.11,<4.0
9
9
  Classifier: License :: OSI Approved :: Apache Software License
10
10
  Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Classifier: Programming Language :: Python :: 3.13
14
- Requires-Dist: nbsphinx (>=0.9.6,<0.10.0)
15
14
  Requires-Dist: pandas (>=2.1.4,<3.0.0)
16
15
  Requires-Dist: python-dateutil (>=2.9.0.post0,<3.0.0)
17
16
  Requires-Dist: pytype (>=2024.4.11,<2025.0.0)
18
17
  Requires-Dist: scikit-learn (>=1.3.2,<1.6.1)
19
- Requires-Dist: sphinx-autoapi (>=3.4.0,<4.0.0)
20
18
  Requires-Dist: tsdf (>=0.5.2,<0.6.0)
21
19
  Description-Content-Type: text/markdown
22
20
 
23
- ![ParaDigMa logo](https://raw.githubusercontent.com/biomarkersParkinson/paradigma/update-readme/docs/source/_static/img/paradigma-logo-banner.png)
21
+ <p align="center">
22
+ <img src="https://raw.githubusercontent.com/biomarkersParkinson/paradigma/main/docs/source/_static/img/paradigma-logo-banner.png" alt="ParaDigMa logo"/>
23
+ </p>
24
24
 
25
25
  | Badges | |
26
26
  |:----:|----|
27
27
  | **Packages and Releases** | [![Latest release](https://img.shields.io/github/release/biomarkersparkinson/paradigma.svg)](https://github.com/biomarkersparkinson/paradigma/releases/latest) [![PyPI](https://img.shields.io/pypi/v/paradigma.svg)](https://pypi.python.org/pypi/paradigma/) [![Static Badge](https://img.shields.io/badge/RSD-paradigma-lib)](https://research-software-directory.org/software/paradigma) |
28
- | **DOI** | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13838393.svg)](https://doi.org/10.5281/zenodo.13838393) |
28
+ | **DOI** | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13838392.svg)](https://doi.org/10.5281/zenodo.13838392) |
29
29
  | **Build Status** | [![](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![Build and test](https://github.com/biomarkersParkinson/paradigma/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/biomarkersParkinson/paradigma/actions/workflows/build-and-test.yml) [![pages-build-deployment](https://github.com/biomarkersParkinson/paradigma/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/biomarkersParkinson/paradigma/actions/workflows/pages/pages-build-deployment) |
30
30
  | **License** | [![GitHub license](https://img.shields.io/github/license/biomarkersParkinson/paradigma)](https://github.com/biomarkersparkinson/paradigma/blob/main/LICENSE) |
31
31
  <!-- | **Fairness** | [![fair-software.eu](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F-green)](https://fair-software.eu) [![OpenSSF Best Practices](https://bestpractices.coreinfrastructure.org/projects/8083/badge)](https://www.bestpractices.dev/projects/8083) | -->
32
32
 
33
- ParaDigMa is a Python package for processing time series data of wrist-worn sensors to quantify signs of Parkinson’s disease (PD). It contains functionalities for processing the following sensor types:
34
- * Inertial Measurement Units (accelerometer, gyroscope)
35
- * Photoplethysmogram (PPG)
33
+ ## Introduction
34
+ The Parkinsons Disease Digital Markers (ParaDigMa) toolbox is a Python
35
+ software package designed for processing passively collected wrist
36
+ sensor data to extract digital measures of motor and non-motor signs
37
+ of Parkinson's disease (PD).
36
38
 
37
- And analyses of the following motor and non-motor domains:
38
- * Gait
39
- * Tremor
40
- * Heart Rate
39
+ Specifically, the toolbox contains three data processing pipelines:
40
+ (1) arm swing during gait, (2) tremor, and (3) heart rate analysis.
41
+ Furthermore, the toolbox contains general functionalities for signal
42
+ processing and feature extraction, such as filtering, peak detection,
43
+ and spectral analysis. The toolbox is designed to be user-friendly and
44
+ modular, enabling researchers to easily extend the toolbox with new
45
+ algorithms and functionalities. The toolbox is accompanied by a set of
46
+ example scripts and notebooks for each domain that demonstrate how to use
47
+ the toolbox for processing sensor data and extracting digital measures.
48
+
49
+ It contains functionalities for processing the following sensor types:
50
+
51
+ - Inertial Measurement Units (accelerometer, gyroscope)
52
+ - Photoplethysmogram (PPG)
41
53
 
42
54
  ## More about ParaDigMa
43
55
  The components of ParaDigMa are visually shown in the diagram below.
44
56
 
45
- ![Pipeline Architecture](docs/source/_static/img/pipeline-architecture.png)
57
+ <p align="center">
58
+ <img src="https://raw.githubusercontent.com/biomarkersParkinson/paradigma/main/docs/source/_static/img/pipeline-architecture.png" alt="Pipeline architeecture"/>
59
+ </p>
46
60
 
47
61
  #### Processes
48
62
  ParaDigMa can best be understood by categorizing the sequential processes:
@@ -112,7 +126,8 @@ Interested in contributing? Check out the contributing guidelines. Please note t
112
126
 
113
127
  ## License
114
128
 
115
- ParaDigMa was created by Peter Kok, Vedran Kasalica, Erik Post, Kars Veldkamp, Nienke Timmermans, Diogo Coutinho Soriano, Luc Evers. It is licensed under the terms of the Apache License 2.0 license.
129
+ The core team of ParaDigMa consists of Erik Post, Kars Veldkamp, Nienke Timmermans, Diogo Coutinho Soriano, Luc Evers,
130
+ 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.
116
131
 
117
132
  ## Credits
118
133
 
@@ -1,26 +1,42 @@
1
- ![ParaDigMa logo](https://raw.githubusercontent.com/biomarkersParkinson/paradigma/update-readme/docs/source/_static/img/paradigma-logo-banner.png)
1
+ <p align="center">
2
+ <img src="https://raw.githubusercontent.com/biomarkersParkinson/paradigma/main/docs/source/_static/img/paradigma-logo-banner.png" alt="ParaDigMa logo"/>
3
+ </p>
2
4
 
3
5
  | Badges | |
4
6
  |:----:|----|
5
7
  | **Packages and Releases** | [![Latest release](https://img.shields.io/github/release/biomarkersparkinson/paradigma.svg)](https://github.com/biomarkersparkinson/paradigma/releases/latest) [![PyPI](https://img.shields.io/pypi/v/paradigma.svg)](https://pypi.python.org/pypi/paradigma/) [![Static Badge](https://img.shields.io/badge/RSD-paradigma-lib)](https://research-software-directory.org/software/paradigma) |
6
- | **DOI** | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13838393.svg)](https://doi.org/10.5281/zenodo.13838393) |
8
+ | **DOI** | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13838392.svg)](https://doi.org/10.5281/zenodo.13838392) |
7
9
  | **Build Status** | [![](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/) [![Build and test](https://github.com/biomarkersParkinson/paradigma/actions/workflows/build-and-test.yml/badge.svg)](https://github.com/biomarkersParkinson/paradigma/actions/workflows/build-and-test.yml) [![pages-build-deployment](https://github.com/biomarkersParkinson/paradigma/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/biomarkersParkinson/paradigma/actions/workflows/pages/pages-build-deployment) |
8
10
  | **License** | [![GitHub license](https://img.shields.io/github/license/biomarkersParkinson/paradigma)](https://github.com/biomarkersparkinson/paradigma/blob/main/LICENSE) |
9
11
  <!-- | **Fairness** | [![fair-software.eu](https://img.shields.io/badge/fair--software.eu-%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F%20%20%E2%97%8F-green)](https://fair-software.eu) [![OpenSSF Best Practices](https://bestpractices.coreinfrastructure.org/projects/8083/badge)](https://www.bestpractices.dev/projects/8083) | -->
10
12
 
11
- ParaDigMa is a Python package for processing time series data of wrist-worn sensors to quantify signs of Parkinson’s disease (PD). It contains functionalities for processing the following sensor types:
12
- * Inertial Measurement Units (accelerometer, gyroscope)
13
- * Photoplethysmogram (PPG)
13
+ ## Introduction
14
+ The Parkinsons Disease Digital Markers (ParaDigMa) toolbox is a Python
15
+ software package designed for processing passively collected wrist
16
+ sensor data to extract digital measures of motor and non-motor signs
17
+ of Parkinson's disease (PD).
14
18
 
15
- And analyses of the following motor and non-motor domains:
16
- * Gait
17
- * Tremor
18
- * Heart Rate
19
+ Specifically, the toolbox contains three data processing pipelines:
20
+ (1) arm swing during gait, (2) tremor, and (3) heart rate analysis.
21
+ Furthermore, the toolbox contains general functionalities for signal
22
+ processing and feature extraction, such as filtering, peak detection,
23
+ and spectral analysis. The toolbox is designed to be user-friendly and
24
+ modular, enabling researchers to easily extend the toolbox with new
25
+ algorithms and functionalities. The toolbox is accompanied by a set of
26
+ example scripts and notebooks for each domain that demonstrate how to use
27
+ the toolbox for processing sensor data and extracting digital measures.
28
+
29
+ It contains functionalities for processing the following sensor types:
30
+
31
+ - Inertial Measurement Units (accelerometer, gyroscope)
32
+ - Photoplethysmogram (PPG)
19
33
 
20
34
  ## More about ParaDigMa
21
35
  The components of ParaDigMa are visually shown in the diagram below.
22
36
 
23
- ![Pipeline Architecture](docs/source/_static/img/pipeline-architecture.png)
37
+ <p align="center">
38
+ <img src="https://raw.githubusercontent.com/biomarkersParkinson/paradigma/main/docs/source/_static/img/pipeline-architecture.png" alt="Pipeline architeecture"/>
39
+ </p>
24
40
 
25
41
  #### Processes
26
42
  ParaDigMa can best be understood by categorizing the sequential processes:
@@ -90,7 +106,8 @@ Interested in contributing? Check out the contributing guidelines. Please note t
90
106
 
91
107
  ## License
92
108
 
93
- ParaDigMa was created by Peter Kok, Vedran Kasalica, Erik Post, Kars Veldkamp, Nienke Timmermans, Diogo Coutinho Soriano, Luc Evers. It is licensed under the terms of the Apache License 2.0 license.
109
+ The core team of ParaDigMa consists of Erik Post, Kars Veldkamp, Nienke Timmermans, Diogo Coutinho Soriano, Luc Evers,
110
+ 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.
94
111
 
95
112
  ## Credits
96
113
 
@@ -1,14 +1,15 @@
1
1
  [tool.poetry]
2
2
  name = "paradigma"
3
- version = "0.4.0"
3
+ version = "0.4.2"
4
4
  description = "Paradigma - a toolbox for Digital Biomarkers for Parkinson's Disease"
5
- authors = [ "Peter Kok <p.kok@esciencecenter.nl>",
5
+ authors = [ "Erik Post <erik.post@radboudumc.nl>",
6
+ "Kars Veldkamp <kars.veldkamp@radboudumc.nl>",
7
+ "Nienke Timmermans <nienke.timmermans@radboudumc.nl>",
8
+ "Diogo Soriano",
6
9
  "Vedran Kasalica <v.kaslica@esciencecenter.nl>",
7
- "Erik Post",
8
- "Kars Veldkamp",
9
- "Nienke Timmermans",
10
- "Diogo Coutinho Soriano",
11
- "Luc Evers" ]
10
+ "Peter Kok <p.kok@esciencecenter.nl>",
11
+ "Luc Evers <luc.evers@radboudumc.nl>",
12
+ ]
12
13
  license = "Apache License 2.0"
13
14
  readme = "README.md"
14
15
 
@@ -21,8 +22,6 @@ pytype = "^2024.4.11"
21
22
  # for the record: pytype was installed directly with pip (in the poetry environment),
22
23
  # because poetry didn't handle the install for different CPU architectures
23
24
  python-dateutil = "^2.9.0.post0"
24
- sphinx-autoapi = "^3.4.0"
25
- nbsphinx = "^0.9.6"
26
25
 
27
26
  [tool.poetry.group.testing.dependencies]
28
27
  ipykernel = "^6.27.1"
@@ -37,7 +36,8 @@ myst-nb = "^1.1.0"
37
36
  sphinx-autoapi = "^3.0.0"
38
37
  sphinx-rtd-theme = "^2.0.0"
39
38
  sphinx-serve = "^1.0.1"
40
-
39
+ myst-parser = "^4.0.0"
40
+ nbsphinx = "^0.9.6"
41
41
 
42
42
  [tool.poetry.group.dev.dependencies]
43
43
  pytype = "^2024.10.11"
@@ -479,7 +479,7 @@ def quantify_arm_swing(
479
479
  # Group consecutive timestamps into segments, with new segments starting after a pre-specified gap
480
480
  # Now segments are based on predicted gait without other arm activity for subsequent processes
481
481
  df_focus[DataColumns.SEGMENT_NR] = create_segments(
482
- time_array=df[DataColumns.TIME],
482
+ time_array=df_focus[DataColumns.TIME],
483
483
  max_segment_gap_s=max_segment_gap_s
484
484
  )
485
485
  else:
@@ -79,7 +79,7 @@ def detect_tremor(df: pd.DataFrame, config: TremorConfig, full_path_to_classifie
79
79
  2. Scales the relevant features in the input DataFrame (`df`) using the loaded scaling parameters.
80
80
  3. Makes predictions using the classifier to estimate the probability of tremor.
81
81
  4. Applies a threshold to the predicted probabilities to classify whether tremor is detected or not.
82
- 5. Checks for rest tremor by verifying the frequency of the peak and low-frequency power.
82
+ 5. Checks for rest tremor by verifying the frequency of the peak and below tremor power.
83
83
  6. Adds the predicted probabilities and the classification result to the DataFrame.
84
84
 
85
85
  Parameters
File without changes