clabtoolkit 0.2.0__tar.gz → 0.3.2a1__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 (70) hide show
  1. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/CONTRIBUTING.rst +1 -1
  2. clabtoolkit-0.3.2a1/HISTORY.rst +8 -0
  3. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/MANIFEST.in +5 -0
  4. clabtoolkit-0.3.2a1/PKG-INFO +211 -0
  5. clabtoolkit-0.3.2a1/README.rst +151 -0
  6. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/clabtoolkit/__init__.py +1 -1
  7. clabtoolkit-0.3.2a1/clabtoolkit/bidstools.py +2235 -0
  8. clabtoolkit-0.3.2a1/clabtoolkit/config/bids.json +147 -0
  9. clabtoolkit-0.3.2a1/clabtoolkit/config/config.json +58 -0
  10. clabtoolkit-0.3.2a1/clabtoolkit/config/lobes.json +112 -0
  11. clabtoolkit-0.3.2a1/clabtoolkit/config/stats_mapping.json +140 -0
  12. clabtoolkit-0.2.0/clabtoolkit/surfacetools.py → clabtoolkit-0.3.2a1/clabtoolkit/connectivitytools.py +0 -0
  13. clabtoolkit-0.3.2a1/clabtoolkit/dicomtools.py +898 -0
  14. clabtoolkit-0.3.2a1/clabtoolkit/dwitools.py +682 -0
  15. clabtoolkit-0.3.2a1/clabtoolkit/freesurfertools.py +3256 -0
  16. clabtoolkit-0.3.2a1/clabtoolkit/imagetools.py +642 -0
  17. clabtoolkit-0.3.2a1/clabtoolkit/misctools.py +3667 -0
  18. clabtoolkit-0.3.2a1/clabtoolkit/morphometrytools.py +2930 -0
  19. clabtoolkit-0.3.2a1/clabtoolkit/parcellationtools.py +1960 -0
  20. clabtoolkit-0.3.2a1/clabtoolkit/pipelinetools.py +1088 -0
  21. clabtoolkit-0.3.2a1/clabtoolkit/qcqatools.py +1117 -0
  22. clabtoolkit-0.3.2a1/clabtoolkit/segmentationtools.py +436 -0
  23. clabtoolkit-0.3.2a1/clabtoolkit/surfacetools.py +1227 -0
  24. clabtoolkit-0.3.2a1/clabtoolkit/visualizationtools.py +817 -0
  25. clabtoolkit-0.3.2a1/clabtoolkit.egg-info/PKG-INFO +211 -0
  26. clabtoolkit-0.3.2a1/clabtoolkit.egg-info/SOURCES.txt +48 -0
  27. clabtoolkit-0.3.2a1/clabtoolkit.egg-info/requires.txt +27 -0
  28. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/docs/Makefile +6 -6
  29. clabtoolkit-0.3.2a1/docs/make.bat +35 -0
  30. clabtoolkit-0.3.2a1/docs/source/conf.py +76 -0
  31. clabtoolkit-0.3.2a1/docs/source/index.rst +71 -0
  32. clabtoolkit-0.3.2a1/pyproject.toml +197 -0
  33. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/setup.cfg +1 -1
  34. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/setup.py +5 -3
  35. clabtoolkit-0.3.2a1/tests/conftest.py +75 -0
  36. clabtoolkit-0.3.2a1/tests/test_extract_bids_entities_to_dataframe.py +609 -0
  37. clabtoolkit-0.3.2a1/tests/test_extract_string_values.py +529 -0
  38. clabtoolkit-0.3.2a1/tests/test_freesurfer_parsers.py +635 -0
  39. clabtoolkit-0.3.2a1/tests/test_get_units.py +435 -0
  40. clabtoolkit-0.3.2a1/tests/test_parcellationtools-Parcellation-replace_values.py +78 -0
  41. clabtoolkit-0.3.2a1/tests/test_parse_freesurfer_cortex_stats.py +758 -0
  42. clabtoolkit-0.3.2a1/tests/test_stats_from_vector.py +378 -0
  43. clabtoolkit-0.2.0/HISTORY.rst +0 -8
  44. clabtoolkit-0.2.0/PKG-INFO +0 -68
  45. clabtoolkit-0.2.0/README.rst +0 -37
  46. clabtoolkit-0.2.0/clabtoolkit/bidstools.py +0 -156
  47. clabtoolkit-0.2.0/clabtoolkit/dicomtools.py +0 -161
  48. clabtoolkit-0.2.0/clabtoolkit/dwitools.py +0 -68
  49. clabtoolkit-0.2.0/clabtoolkit/examples.py +0 -23
  50. clabtoolkit-0.2.0/clabtoolkit/freesurfertools.py +0 -437
  51. clabtoolkit-0.2.0/clabtoolkit/misctools.py +0 -456
  52. clabtoolkit-0.2.0/clabtoolkit/parcellationtools.py +0 -766
  53. clabtoolkit-0.2.0/clabtoolkit.egg-info/PKG-INFO +0 -68
  54. clabtoolkit-0.2.0/clabtoolkit.egg-info/SOURCES.txt +0 -34
  55. clabtoolkit-0.2.0/docs/authors.rst +0 -1
  56. clabtoolkit-0.2.0/docs/conf.py +0 -162
  57. clabtoolkit-0.2.0/docs/contributing.rst +0 -1
  58. clabtoolkit-0.2.0/docs/history.rst +0 -1
  59. clabtoolkit-0.2.0/docs/index.rst +0 -20
  60. clabtoolkit-0.2.0/docs/installation.rst +0 -51
  61. clabtoolkit-0.2.0/docs/make.bat +0 -36
  62. clabtoolkit-0.2.0/docs/readme.rst +0 -1
  63. clabtoolkit-0.2.0/docs/usage.rst +0 -7
  64. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/AUTHORS.rst +0 -0
  65. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/LICENSE +0 -0
  66. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/clabtoolkit.egg-info/dependency_links.txt +0 -0
  67. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/clabtoolkit.egg-info/not-zip-safe +0 -0
  68. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/clabtoolkit.egg-info/top_level.txt +0 -0
  69. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/tests/__init__.py +0 -0
  70. {clabtoolkit-0.2.0 → clabtoolkit-0.3.2a1}/tests/test_clabtoolkit.py +0 -0
@@ -102,7 +102,7 @@ Before you submit a pull request, check that it meets these guidelines:
102
102
  2. If the pull request adds functionality, the docs should be updated. Put
103
103
  your new functionality into a function with a docstring, and add the
104
104
  feature to the list in README.rst.
105
- 3. The pull request should work for Python 3.5, 3.6, 3.7 and 3.8, and for PyPy. Check
105
+ 3. The pull request should work for Python >3.10, and for PyPy. Check
106
106
  https://travis-ci.com/yasseraleman/clabtoolkit/pull_requests
107
107
  and make sure that the tests pass for all supported Python versions.
108
108
 
@@ -0,0 +1,8 @@
1
+ =======
2
+ History
3
+ =======
4
+
5
+ 0.3.1 (2025-05-22)
6
+ ------------------
7
+
8
+ * Fourth release on PyPI.
@@ -7,5 +7,10 @@ include README.rst
7
7
  recursive-include tests *
8
8
  recursive-exclude * __pycache__
9
9
  recursive-exclude * *.py[co]
10
+ recursive-include clabtoolkit/config *
11
+
12
+ exclude clabtoolkit/clabtoolkit/test3.py
13
+ exclude clabtoolkit/clabtoolkit/test_2.py
14
+ exclude clabtoolkit/clabtoolkit/test_file.py
10
15
 
11
16
  recursive-include docs *.rst conf.py Makefile make.bat *.jpg *.png *.gif
@@ -0,0 +1,211 @@
1
+ Metadata-Version: 2.4
2
+ Name: clabtoolkit
3
+ Version: 0.3.2a1
4
+ Summary: A comprehensive toolkit for neuroimaging data processing and analysis
5
+ Home-page: https://github.com/connectomicslab/clabtoolkit
6
+ Author: Yasser Alemán-Gómez
7
+ Author-email: Yasser Alemán-Gómez <yasseraleman@protonmail.com>
8
+ Maintainer-email: Yasser Alemán-Gómez <yasseraleman@protonmail.com>
9
+ License: Apache-2.0
10
+ Project-URL: Homepage, https://github.com/connectomicslab/clabtoolkit
11
+ Project-URL: Repository, https://github.com/connectomicslab/clabtoolkit
12
+ Project-URL: Documentation, https://clabtoolkit.readthedocs.io
13
+ Project-URL: Bug Tracker, https://github.com/connectomicslab/clabtoolkit/issues
14
+ Keywords: neuroimaging,image-processing,bids,freesurfer,connectivity
15
+ Classifier: Development Status :: 4 - Beta
16
+ Classifier: Intended Audience :: Science/Research
17
+ Classifier: Intended Audience :: Developers
18
+ Classifier: License :: OSI Approved :: Apache Software License
19
+ Classifier: Natural Language :: English
20
+ Classifier: Operating System :: OS Independent
21
+ Classifier: Programming Language :: Python :: 3
22
+ Classifier: Programming Language :: Python :: 3.9
23
+ Classifier: Programming Language :: Python :: 3.10
24
+ Classifier: Programming Language :: Python :: 3.11
25
+ Classifier: Programming Language :: Python :: 3.12
26
+ Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
27
+ Classifier: Topic :: Scientific/Engineering :: Image Processing
28
+ Requires-Python: >=3.6
29
+ Description-Content-Type: text/x-rst
30
+ License-File: LICENSE
31
+ License-File: AUTHORS.rst
32
+ Requires-Dist: nibabel>=5.3.2
33
+ Requires-Dist: numpy>=1.23.5
34
+ Requires-Dist: pandas>=2.2.3
35
+ Requires-Dist: pydicom>=3.0.1
36
+ Requires-Dist: rich>=13.9.4
37
+ Requires-Dist: scipy>=1.14.1
38
+ Requires-Dist: setuptools>=68.0.0
39
+ Requires-Dist: scikit-image>=0.22.0
40
+ Provides-Extra: dev
41
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
42
+ Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
43
+ Requires-Dist: black>=23.0.0; extra == "dev"
44
+ Requires-Dist: ruff>=0.1.0; extra == "dev"
45
+ Requires-Dist: mypy>=1.5.0; extra == "dev"
46
+ Requires-Dist: pre-commit>=3.0.0; extra == "dev"
47
+ Requires-Dist: tox>=4.0.0; extra == "dev"
48
+ Provides-Extra: docs
49
+ Requires-Dist: sphinx>=7.0.0; extra == "docs"
50
+ Requires-Dist: sphinx-rtd-theme>=1.3.0; extra == "docs"
51
+ Requires-Dist: myst-parser>=2.0.0; extra == "docs"
52
+ Provides-Extra: test
53
+ Requires-Dist: pytest>=7.0.0; extra == "test"
54
+ Requires-Dist: pytest-cov>=4.0.0; extra == "test"
55
+ Requires-Dist: pytest-xdist>=3.0.0; extra == "test"
56
+ Dynamic: author
57
+ Dynamic: home-page
58
+ Dynamic: license-file
59
+ Dynamic: requires-python
60
+
61
+ ========================
62
+ Connectomics Lab Toolkit
63
+ ========================
64
+
65
+
66
+ .. image:: https://img.shields.io/pypi/v/clabtoolkit.svg
67
+ :target: https://pypi.python.org/pypi/clabtoolkit
68
+
69
+ .. image:: https://github.com/connectomicslab/clabtoolkit/actions/workflows/ci.yml/badge.svg
70
+ :target: https://github.com/connectomicslab/clabtoolkit/actions/workflows/ci.yml
71
+
72
+ .. image:: https://readthedocs.org/projects/clabtoolkit/badge/?version=latest
73
+ :target: https://clabtoolkit.readthedocs.io/en/latest/?version=latest
74
+ :alt: Documentation Status
75
+
76
+ .. image:: https://img.shields.io/pypi/pyversions/clabtoolkit.svg
77
+ :target: https://pypi.python.org/pypi/clabtoolkit
78
+
79
+ .. image:: https://codecov.io/gh/connectomicslab/clabtoolkit/branch/main/graph/badge.svg
80
+ :target: https://codecov.io/gh/connectomicslab/clabtoolkit
81
+
82
+
83
+ A comprehensive Python toolkit for neuroimaging data processing and analysis, specifically designed for working with brain connectivity data, BIDS datasets, and various neuroimaging formats.
84
+
85
+ * **Free software**: Apache Software License 2.0
86
+ * **Documentation**: https://clabtoolkit.readthedocs.io
87
+ * **Source Code**: https://github.com/connectomicslab/clabtoolkit
88
+ * **Python versions**: 3.9+
89
+
90
+ Installation
91
+ ------------
92
+
93
+ Install from PyPI::
94
+
95
+ pip install clabtoolkit
96
+
97
+ For development installation::
98
+
99
+ git clone https://github.com/connectomicslab/clabtoolkit.git
100
+ cd clabtoolkit
101
+ pip install -e .[dev]
102
+
103
+ Features
104
+ --------
105
+
106
+ **BIDS Tools** (``clabtoolkit.bidstools``)
107
+ * BIDS dataset validation and manipulation
108
+ * Entity extraction from BIDS filenames
109
+ * Conversion between BIDS formats
110
+ * Metadata handling for neuroimaging datasets
111
+
112
+ **Connectivity Tools** (``clabtoolkit.connectivitytools``)
113
+ * Brain connectivity matrix analysis
114
+ * Network-based statistics
115
+ * Graph theory metrics computation
116
+ * Connectivity visualization utilities
117
+
118
+ **FreeSurfer Tools** (``clabtoolkit.freesurfertools``)
119
+ * FreeSurfer output parsing and processing
120
+ * Surface-based analysis utilities
121
+ * Cortical thickness and morphometry tools
122
+ * Integration with FreeSurfer workflows
123
+
124
+ **Image Processing Tools** (``clabtoolkit.imagetools``)
125
+ * Neuroimaging data I/O operations
126
+ * Image registration and transformation
127
+ * Quality control and preprocessing utilities
128
+ * Multi-modal image processing
129
+
130
+ **Parcellation Tools** (``clabtoolkit.parcellationtools``)
131
+ * Brain parcellation scheme handling
132
+ * Region-of-interest (ROI) extraction
133
+ * Atlas-based analysis tools
134
+ * Custom parcellation creation
135
+
136
+ **Surface Tools** (``clabtoolkit.surfacetools``)
137
+ * Surface mesh processing and analysis
138
+ * Cortical surface manipulation
139
+ * Surface-based statistics
140
+ * Visualization of surface data
141
+
142
+ **DWI Tools** (``clabtoolkit.dwitools``)
143
+ * Diffusion-weighted imaging analysis
144
+ * Tractography processing utilities
145
+ * DTI and advanced diffusion modeling
146
+ * White matter analysis tools
147
+
148
+ **Quality Control Tools** (``clabtoolkit.qcqatools``)
149
+ * Automated quality assessment
150
+ * Image artifact detection
151
+ * Quality metrics computation
152
+ * Reporting and visualization
153
+
154
+ **Visualization Tools** (``clabtoolkit.visualizationtools``)
155
+ * Brain visualization utilities
156
+ * Interactive plotting capabilities
157
+ * Publication-ready figures
158
+ * Multi-modal data visualization
159
+
160
+ Quick Start
161
+ -----------
162
+
163
+ .. code-block:: python
164
+
165
+ import clabtoolkit.bidstools as bids
166
+ import clabtoolkit.connectivitytools as conn
167
+
168
+ # Load BIDS configuration
169
+ config = bids.load_bids_json()
170
+
171
+ # Extract entities from BIDS filename
172
+ entities = bids.str2entity("sub-01_ses-M00_T1w.nii.gz")
173
+ print(entities) # {'sub': '01', 'ses': 'M00', 'suffix': 'T1w', 'extension': 'nii.gz'}
174
+
175
+ # Process connectivity data
176
+ # conn_matrix = conn.load_connectivity_matrix("path/to/connectivity.mat")
177
+
178
+ Contributing
179
+ ------------
180
+
181
+ Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
182
+
183
+ 1. Fork the repository
184
+ 2. Create your feature branch (``git checkout -b feature/amazing-feature``)
185
+ 3. Commit your changes (``git commit -m 'Add some amazing feature'``)
186
+ 4. Push to the branch (``git push origin feature/amazing-feature``)
187
+ 5. Open a Pull Request
188
+
189
+ Testing
190
+ -------
191
+
192
+ Run tests with::
193
+
194
+ pytest
195
+
196
+ Run tests with coverage::
197
+
198
+ pytest --cov=clabtoolkit
199
+
200
+ Changelog
201
+ ---------
202
+
203
+ See `HISTORY.rst <HISTORY.rst>`_ for a detailed changelog.
204
+
205
+ Credits
206
+ -------
207
+
208
+ This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.
209
+
210
+ .. _Cookiecutter: https://github.com/audreyr/cookiecutter
211
+ .. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
@@ -0,0 +1,151 @@
1
+ ========================
2
+ Connectomics Lab Toolkit
3
+ ========================
4
+
5
+
6
+ .. image:: https://img.shields.io/pypi/v/clabtoolkit.svg
7
+ :target: https://pypi.python.org/pypi/clabtoolkit
8
+
9
+ .. image:: https://github.com/connectomicslab/clabtoolkit/actions/workflows/ci.yml/badge.svg
10
+ :target: https://github.com/connectomicslab/clabtoolkit/actions/workflows/ci.yml
11
+
12
+ .. image:: https://readthedocs.org/projects/clabtoolkit/badge/?version=latest
13
+ :target: https://clabtoolkit.readthedocs.io/en/latest/?version=latest
14
+ :alt: Documentation Status
15
+
16
+ .. image:: https://img.shields.io/pypi/pyversions/clabtoolkit.svg
17
+ :target: https://pypi.python.org/pypi/clabtoolkit
18
+
19
+ .. image:: https://codecov.io/gh/connectomicslab/clabtoolkit/branch/main/graph/badge.svg
20
+ :target: https://codecov.io/gh/connectomicslab/clabtoolkit
21
+
22
+
23
+ A comprehensive Python toolkit for neuroimaging data processing and analysis, specifically designed for working with brain connectivity data, BIDS datasets, and various neuroimaging formats.
24
+
25
+ * **Free software**: Apache Software License 2.0
26
+ * **Documentation**: https://clabtoolkit.readthedocs.io
27
+ * **Source Code**: https://github.com/connectomicslab/clabtoolkit
28
+ * **Python versions**: 3.9+
29
+
30
+ Installation
31
+ ------------
32
+
33
+ Install from PyPI::
34
+
35
+ pip install clabtoolkit
36
+
37
+ For development installation::
38
+
39
+ git clone https://github.com/connectomicslab/clabtoolkit.git
40
+ cd clabtoolkit
41
+ pip install -e .[dev]
42
+
43
+ Features
44
+ --------
45
+
46
+ **BIDS Tools** (``clabtoolkit.bidstools``)
47
+ * BIDS dataset validation and manipulation
48
+ * Entity extraction from BIDS filenames
49
+ * Conversion between BIDS formats
50
+ * Metadata handling for neuroimaging datasets
51
+
52
+ **Connectivity Tools** (``clabtoolkit.connectivitytools``)
53
+ * Brain connectivity matrix analysis
54
+ * Network-based statistics
55
+ * Graph theory metrics computation
56
+ * Connectivity visualization utilities
57
+
58
+ **FreeSurfer Tools** (``clabtoolkit.freesurfertools``)
59
+ * FreeSurfer output parsing and processing
60
+ * Surface-based analysis utilities
61
+ * Cortical thickness and morphometry tools
62
+ * Integration with FreeSurfer workflows
63
+
64
+ **Image Processing Tools** (``clabtoolkit.imagetools``)
65
+ * Neuroimaging data I/O operations
66
+ * Image registration and transformation
67
+ * Quality control and preprocessing utilities
68
+ * Multi-modal image processing
69
+
70
+ **Parcellation Tools** (``clabtoolkit.parcellationtools``)
71
+ * Brain parcellation scheme handling
72
+ * Region-of-interest (ROI) extraction
73
+ * Atlas-based analysis tools
74
+ * Custom parcellation creation
75
+
76
+ **Surface Tools** (``clabtoolkit.surfacetools``)
77
+ * Surface mesh processing and analysis
78
+ * Cortical surface manipulation
79
+ * Surface-based statistics
80
+ * Visualization of surface data
81
+
82
+ **DWI Tools** (``clabtoolkit.dwitools``)
83
+ * Diffusion-weighted imaging analysis
84
+ * Tractography processing utilities
85
+ * DTI and advanced diffusion modeling
86
+ * White matter analysis tools
87
+
88
+ **Quality Control Tools** (``clabtoolkit.qcqatools``)
89
+ * Automated quality assessment
90
+ * Image artifact detection
91
+ * Quality metrics computation
92
+ * Reporting and visualization
93
+
94
+ **Visualization Tools** (``clabtoolkit.visualizationtools``)
95
+ * Brain visualization utilities
96
+ * Interactive plotting capabilities
97
+ * Publication-ready figures
98
+ * Multi-modal data visualization
99
+
100
+ Quick Start
101
+ -----------
102
+
103
+ .. code-block:: python
104
+
105
+ import clabtoolkit.bidstools as bids
106
+ import clabtoolkit.connectivitytools as conn
107
+
108
+ # Load BIDS configuration
109
+ config = bids.load_bids_json()
110
+
111
+ # Extract entities from BIDS filename
112
+ entities = bids.str2entity("sub-01_ses-M00_T1w.nii.gz")
113
+ print(entities) # {'sub': '01', 'ses': 'M00', 'suffix': 'T1w', 'extension': 'nii.gz'}
114
+
115
+ # Process connectivity data
116
+ # conn_matrix = conn.load_connectivity_matrix("path/to/connectivity.mat")
117
+
118
+ Contributing
119
+ ------------
120
+
121
+ Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
122
+
123
+ 1. Fork the repository
124
+ 2. Create your feature branch (``git checkout -b feature/amazing-feature``)
125
+ 3. Commit your changes (``git commit -m 'Add some amazing feature'``)
126
+ 4. Push to the branch (``git push origin feature/amazing-feature``)
127
+ 5. Open a Pull Request
128
+
129
+ Testing
130
+ -------
131
+
132
+ Run tests with::
133
+
134
+ pytest
135
+
136
+ Run tests with coverage::
137
+
138
+ pytest --cov=clabtoolkit
139
+
140
+ Changelog
141
+ ---------
142
+
143
+ See `HISTORY.rst <HISTORY.rst>`_ for a detailed changelog.
144
+
145
+ Credits
146
+ -------
147
+
148
+ This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.
149
+
150
+ .. _Cookiecutter: https://github.com/audreyr/cookiecutter
151
+ .. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
@@ -2,4 +2,4 @@
2
2
 
3
3
  __author__ = """Yasser Alemán-Gómez"""
4
4
  __email__ = "yasseraleman@protonmail.com"
5
- __version__ = "0.2.0"
5
+ __version__ = "0.3.1"