junifer 0.0.8.dev257__tar.gz → 0.0.8.dev270__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.
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/Dockerfile-ci +63 -2
- {junifer-0.0.8.dev257/junifer.egg-info → junifer-0.0.8.dev270}/PKG-INFO +3 -3
- junifer-0.0.8.dev270/docs/changes/newsfragments/515.doc +1 -0
- junifer-0.0.8.dev270/docs/changes/newsfragments/515.enh +1 -0
- junifer-0.0.8.dev270/docs/changes/newsfragments/515.enh.1 +1 -0
- junifer-0.0.8.dev270/docs/changes/newsfragments/515.misc +1 -0
- junifer-0.0.8.dev270/docs/changes/newsfragments/515.misc.1 +1 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/marker.rst +2 -2
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/preprocess.rst +4 -2
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/codeless.rst +23 -23
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/run_compute_parcel_mean.py +12 -16
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/run_junifer_julearn.py +23 -31
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/run_run_gmd_mean.py +12 -18
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/yamls/gmd_mean.yaml +7 -7
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/yamls/gmd_mean_htcondor.yaml +3 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/_version.py +3 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/tests/test_functions.py +7 -2
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/tests/data/gmd_mean.yaml +4 -4
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +3 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +1 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/conftest.py +20 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/tests/test_coordinates.py +3 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/tests/test_maps.py +4 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/tests/test_masks.py +7 -7
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/tests/test_template_spaces.py +7 -7
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/junifer_connectivity_measure.py +92 -27
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +22 -16
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +29 -17
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +14 -22
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/maps_aggregation.py +6 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/parcel_aggregation.py +6 -5
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/sphere_aggregation.py +3 -1
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_parcel_aggregation.py +39 -5
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_sphere_aggregation.py +11 -9
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_data_object_dumper.py +1 -1
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/_temporal_filter.py +12 -5
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/confounds/fmriprep_confound_remover.py +12 -5
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +20 -6
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/tests/test_temporal_filter.py +22 -8
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/datagrabbers.py +193 -13
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/registry.py +6 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +7 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_spmauditory_datagrabber.py +3 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_testing_registry.py +4 -0
- junifer-0.0.8.dev270/junifer/testing/tests/test_uclacnpvbmtesting_datagrabber.py +81 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/__init__.pyi +8 -1
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/helpers.py +42 -1
- junifer-0.0.8.dev270/junifer/utils/tests/test_helpers.py +70 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270/junifer.egg-info}/PKG-INFO +3 -3
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/SOURCES.txt +6 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/requires.txt +2 -2
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/scm_file_list.json +6 -0
- junifer-0.0.8.dev270/junifer.egg-info/scm_version.json +8 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/pyproject.toml +7 -2
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/uv.lock +65 -160
- junifer-0.0.8.dev257/junifer/utils/tests/test_helpers.py +0 -35
- junifer-0.0.8.dev257/junifer.egg-info/scm_version.json +0 -8
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.dockerignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/dependabot.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/pull_request_template.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/check-stale.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/docker-publish.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.github/workflows/publish.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.gitignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.gitmodules +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/.python-version +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/AUTHORS.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/Dockerfile +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/LICENSE.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/README.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/codecov.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/conda-env.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/Makefile +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/_static/css/version_selector.css +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/_templates/versions.html +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/api.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/cli.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/configs.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/data.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/markers.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/stats.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/storage.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/testing.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/api/utils.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/builtin.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/239.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/364.doc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/364.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/364.feature +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/474.misc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/482.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/492.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/499.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/502.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/503.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/510.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.bugfix.1 +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.change +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.enh.1 +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.feature +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.misc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/511.misc.1 +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/513.doc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/513.misc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/514.bugfix +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/514.bugfix.1 +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/changes/newsfragments/514.enh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/conf.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/contribution.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/confounds_format.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/data_dump_asset.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/data_registries.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/data_types.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/extension.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/logging.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/maps.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/masks.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/plugins.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/faq.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/help.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/installation.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/links.inc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/maintaining.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/poly.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/poly_files/patches/version_banner.html +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/poly_files/patches/versions.html +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/poly_files/templates/index.html +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/starting.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/data.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/configuring.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/dumping.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/masks.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/queueing.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/using/running.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/docs/whats_new.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/README.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/ignore_words.txt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/decorators.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/functions.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/api/tests/test_decorators.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/cli.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/parser.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/cli/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/configs/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/_coordinates.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/coordinates/tests/test_coordinates_names.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/_ants_maps_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/_fsl_maps_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/maps/_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/masks/_masks.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/_parcellations.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/pipeline_data_registry_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/tests/test_dispatch.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/data/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/_types.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datareader/default.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.codecov.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.codespellignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/documentation.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/feature-request.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/ISSUE_TEMPLATE/questions-help-support.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/dependabot.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/workflows/build.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/workflows/code-style.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/workflows/doc.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/workflows/publish.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.github/workflows/pytest.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/.gitignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/LICENSE +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/README.md +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/cli/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/cli/help_text.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/cli/parser.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/cli/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/commands/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/commands/sys_info.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/utils/tests/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/utils/tests/test_config.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/Makefile +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/_static/.gitkeep +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/_templates/autosummary/class.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/_templates/autosummary/function.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/_templates/autosummary/module.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/api/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/conf.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/index.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/links.inc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/make.bat +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/doc/references.bib +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/pyproject.toml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/BrainPrint/setup.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.coveragerc +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.gitattributes +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.gitignore +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.travis.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.vscode/launch.json +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/.vscode/settings.json +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/LICENSE.txt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/MANIFEST.in +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/Makefile +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/README.rst +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/azure-pipelines.yml +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/tests/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/tests/test_chunked_array.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/tests/test_chunked_list.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/h5io/tests/test_io.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/setup.cfg +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/setup.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/h5io/versioneer.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/external/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/_afni_falff.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/_junifer_falff.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/falff_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/falff_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/tests/test_falff_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/functional_connectivity_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/_afni_reho.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/_junifer_reho.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/reho_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/reho_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/tests/test_junifer_reho.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/tests/test_reho_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/temporal_snr_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/tests/test_temporal_snr_maps.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_maps_aggregation.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/markers/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/_data_object_dumper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/pipeline_component_registry.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/pipeline_step_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/_temporal_slicer.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/smoothing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/tests/test_temporal_slicer.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/_ants_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/_fsl_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/space_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/stats.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/storage/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_adhdtesting_datagrabber.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/tests/test_testing_utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/testing/utils.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/typing/_typing.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/typing/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/_config.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/fs.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/logging.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/py.typed +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/singleton.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/tests/test_config.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/justfile +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/scripts/start.sh +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/setup.cfg +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/setup.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.8.dev257 → junifer-0.0.8.dev270}/tox.ini +0 -0
|
@@ -115,11 +115,11 @@ RUN set -eux; \
|
|
|
115
115
|
echo "${DATA_VERSION}" > "$HOME/junifer-data-version"
|
|
116
116
|
|
|
117
117
|
# --- nilearn datasets used by junifer.testing (no downloads at test time) ---
|
|
118
|
-
ARG NILEARN_VERSION=0.
|
|
118
|
+
ARG NILEARN_VERSION=0.14.1
|
|
119
119
|
RUN <<'EOF'
|
|
120
120
|
set -eux
|
|
121
121
|
python3 -m venv /tmp/nilearn-venv
|
|
122
|
-
/tmp/nilearn-venv/bin/pip install --no-cache-dir -q "nilearn==${NILEARN_VERSION}"
|
|
122
|
+
/tmp/nilearn-venv/bin/pip install --no-cache-dir -q "nilearn==${NILEARN_VERSION}"
|
|
123
123
|
/tmp/nilearn-venv/bin/python - <<'PY'
|
|
124
124
|
from nilearn import datasets
|
|
125
125
|
datasets.fetch_oasis_vbm(n_subjects=10)
|
|
@@ -131,4 +131,65 @@ rm -rf /tmp/nilearn-venv
|
|
|
131
131
|
du -sh "$HOME/nilearn_data"
|
|
132
132
|
EOF
|
|
133
133
|
|
|
134
|
+
# --- Files derived by junifer.testing and templateflow templates ---
|
|
135
|
+
# Generated with junifer itself (from the build context), so they match what
|
|
136
|
+
# the tests would otherwise create in every job: shortened BOLD files next to
|
|
137
|
+
# the nilearn datasets, the UCLA CNP VBM maps (OpenNeuro ds000030) and the
|
|
138
|
+
# templates used by the tests.
|
|
139
|
+
COPY --chown=docker:docker pyproject.toml setup.py README.md /tmp/junifer-src/
|
|
140
|
+
COPY --chown=docker:docker junifer /tmp/junifer-src/junifer
|
|
141
|
+
RUN <<'EOF'
|
|
142
|
+
set -eux
|
|
143
|
+
python3 -m venv /tmp/junifer-venv
|
|
144
|
+
# Editable: without .git, setuptools-scm cannot list the subpackages for a
|
|
145
|
+
# regular install
|
|
146
|
+
SETUPTOOLS_SCM_PRETEND_VERSION=0.0.0 \
|
|
147
|
+
/tmp/junifer-venv/bin/pip install --no-cache-dir -q -e /tmp/junifer-src
|
|
148
|
+
/tmp/junifer-venv/bin/python - <<'PY'
|
|
149
|
+
from templateflow import api as tflow
|
|
150
|
+
|
|
151
|
+
from junifer.testing.datagrabbers import (
|
|
152
|
+
ADHDTestingDataGrabber,
|
|
153
|
+
PartlyCloudyTestingDataGrabber,
|
|
154
|
+
UCLACNPVBMTestingDataGrabber,
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
# Shortened BOLD (and confounds) used by the tests
|
|
158
|
+
with ADHDTestingDataGrabber() as dg:
|
|
159
|
+
dg["sub-01"]
|
|
160
|
+
with PartlyCloudyTestingDataGrabber(n_timepoints=50) as dg:
|
|
161
|
+
dg["sub-01"]
|
|
162
|
+
|
|
163
|
+
# VBM maps (downloaded from OpenNeuro) resampled to the 2mm grid
|
|
164
|
+
with UCLACNPVBMTestingDataGrabber() as dg:
|
|
165
|
+
for element in dg.get_elements():
|
|
166
|
+
dg[element]
|
|
167
|
+
|
|
168
|
+
# Templates used by the tests
|
|
169
|
+
for space, res in [
|
|
170
|
+
("MNI152Lin", 1),
|
|
171
|
+
("MNI152Lin", 2),
|
|
172
|
+
("MNI152NLin2009aAsym", 1),
|
|
173
|
+
("MNI152NLin2009cAsym", 1),
|
|
174
|
+
("MNI152NLin2009cAsym", 2),
|
|
175
|
+
("MNI152NLin6Asym", 1),
|
|
176
|
+
("MNI152NLin6Asym", 2),
|
|
177
|
+
]:
|
|
178
|
+
tflow.get(space, resolution=res, suffix="T1w", desc=None, extension="nii.gz")
|
|
179
|
+
for space in ("MNI152Lin", "MNI152NLin2009cAsym", "MNI152NLin6Asym"):
|
|
180
|
+
tflow.get(space, resolution=2, desc="brain", suffix="mask", extension="nii.gz")
|
|
181
|
+
for label in ("CSF", "GM", "WM"):
|
|
182
|
+
tflow.get(
|
|
183
|
+
"MNI152NLin2009cAsym",
|
|
184
|
+
resolution=2,
|
|
185
|
+
label=label,
|
|
186
|
+
suffix="probseg",
|
|
187
|
+
extension="nii.gz",
|
|
188
|
+
)
|
|
189
|
+
PY
|
|
190
|
+
rm -rf /tmp/junifer-venv /tmp/junifer-src
|
|
191
|
+
find "$HOME/nilearn_data" -name "*_tp-*" -o -name "*_res-*"
|
|
192
|
+
du -sh "$HOME/.cache/templateflow"
|
|
193
|
+
EOF
|
|
194
|
+
|
|
134
195
|
ENTRYPOINT ["/start.sh"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: junifer
|
|
3
|
-
Version: 0.0.8.
|
|
3
|
+
Version: 0.0.8.dev270
|
|
4
4
|
Summary: JUelich NeuroImaging FEature extractoR
|
|
5
5
|
Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
|
6
6
|
Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
|
|
@@ -34,7 +34,7 @@ Requires-Dist: scipy<1.17.0,>=1.10.0
|
|
|
34
34
|
Requires-Dist: datalad<1.3.0,>=1.0.0
|
|
35
35
|
Requires-Dist: pandas<2.4.0,>=2.0.0
|
|
36
36
|
Requires-Dist: nibabel<5.4.0,>=5.2.0
|
|
37
|
-
Requires-Dist: nilearn
|
|
37
|
+
Requires-Dist: nilearn<0.15,>=0.14.0
|
|
38
38
|
Requires-Dist: sqlalchemy<=2.1.0,>=2.0.25
|
|
39
39
|
Requires-Dist: ruamel.yaml<0.19,>=0.17
|
|
40
40
|
Requires-Dist: h5py>=3.10
|
|
@@ -44,7 +44,7 @@ Requires-Dist: lapy<2.0.0,>=1.0.0
|
|
|
44
44
|
Requires-Dist: lazy_loader==0.4
|
|
45
45
|
Requires-Dist: importlib_metadata; python_version < "3.11"
|
|
46
46
|
Requires-Dist: looseversion==1.3.0; python_version >= "3.12"
|
|
47
|
-
Requires-Dist: junifer-data>=1.
|
|
47
|
+
Requires-Dist: junifer-data>=1.5.0
|
|
48
48
|
Requires-Dist: structlog<26.0.0,>=25.0.0
|
|
49
49
|
Requires-Dist: pydantic>=2.11.4
|
|
50
50
|
Requires-Dist: aenum<3.2.0,>=3.1.0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Use the UCLA CNP VBM testing data and the Tian parcellations in the examples and the codeless documentation, so no example needs warping by `Fede Raimondo`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Add :class:`.UCLACNPVBMTestingDataGrabber` with grey matter probability maps from OpenNeuro ds000030 in MNI152NLin2009cAsym, add ``n_subjects`` to :class:`.PartlyCloudyTestingDataGrabber` and use the native 3mm resolution by default in :class:`.ADHDTestingDataGrabber` by `Fede Raimondo`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Speed up :class:`.ParcelAggregation` by not passing a target affine to the masker, which made ``nilearn`` crop and copy the input image even when the parcellation was already on its grid by `Fede Raimondo`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Speed up the external tests by using fewer subjects, the UCLA CNP VBM testing data and ``junifer-data`` 1.5.0, and bake the derived testing data and templateflow templates into the CI image by `Fede Raimondo`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Speed up the test suite by freezing the objects alive after collection, so the full garbage collections forced by ``nilearn`` are much faster by `Fede Raimondo`_
|
|
@@ -142,7 +142,7 @@ and the values would be a dictionary of storage type specific key-value pairs.
|
|
|
142
142
|
# Create a masker
|
|
143
143
|
masker = NiftiLabelsMasker(
|
|
144
144
|
labels_img=t_parcellation,
|
|
145
|
-
standardize=
|
|
145
|
+
standardize="zscore_sample",
|
|
146
146
|
memory="nilearn_cache",
|
|
147
147
|
verbose=5,
|
|
148
148
|
)
|
|
@@ -232,7 +232,7 @@ Finally, we need to register the Marker using the ``@register_marker`` decorator
|
|
|
232
232
|
# Create a masker
|
|
233
233
|
masker = NiftiLabelsMasker(
|
|
234
234
|
labels_img=t_parcellation,
|
|
235
|
-
standardize=
|
|
235
|
+
standardize="zscore_sample",
|
|
236
236
|
memory="nilearn_cache",
|
|
237
237
|
verbose=5,
|
|
238
238
|
)
|
|
@@ -108,8 +108,10 @@ parameters:
|
|
|
108
108
|
- Apply detrending on timeseries, before confound removal.
|
|
109
109
|
- activated
|
|
110
110
|
* - ``standardize``
|
|
111
|
-
-
|
|
112
|
-
|
|
111
|
+
- | Strategy to standardize the signals: ``zscore_sample`` (zero mean
|
|
112
|
+
| and unit variance), ``psc`` (percent signal change) or ``null``
|
|
113
|
+
| (no standardization).
|
|
114
|
+
- ``zscore_sample``
|
|
113
115
|
* - ``low_pass``
|
|
114
116
|
- Low cutoff frequencies, in Hertz.
|
|
115
117
|
- deactivated
|
|
@@ -31,7 +31,7 @@ as well as some general parameters.
|
|
|
31
31
|
|
|
32
32
|
As an example, we will generate the configuration file for a pipeline that will
|
|
33
33
|
extract the mean ``VBM_GM`` values using two different parcellations and one set
|
|
34
|
-
of coordinates, from the ``
|
|
34
|
+
of coordinates, from the ``UCLA CNP VBM Testing dataset`` included in ``junifer``.
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
General Parameters
|
|
@@ -96,12 +96,12 @@ task.
|
|
|
96
96
|
kind: DataladAOMICPIOP1
|
|
97
97
|
tasks: restingstate
|
|
98
98
|
|
|
99
|
-
In the ``
|
|
99
|
+
In the ``UCLA CNP VBM Testing dataset`` example, the section will look like this:
|
|
100
100
|
|
|
101
101
|
.. code-block:: yaml
|
|
102
102
|
|
|
103
103
|
datagrabber:
|
|
104
|
-
kind:
|
|
104
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
105
105
|
|
|
106
106
|
|
|
107
107
|
Data Reader
|
|
@@ -121,7 +121,7 @@ keys to pass parameters to the DataReader constructor:
|
|
|
121
121
|
kind: DefaultDataReader
|
|
122
122
|
|
|
123
123
|
|
|
124
|
-
For the ``
|
|
124
|
+
For the ``UCLA CNP VBM Testing dataset`` example, we will not specify a
|
|
125
125
|
``datareader`` step.
|
|
126
126
|
|
|
127
127
|
Preprocess
|
|
@@ -146,10 +146,10 @@ need to specify its name as the ``kind`` key, as well as its parameters.
|
|
|
146
146
|
global_signal: basic
|
|
147
147
|
spike: 0.2
|
|
148
148
|
detrend: false
|
|
149
|
-
standardize:
|
|
149
|
+
standardize: zscore_sample
|
|
150
150
|
|
|
151
151
|
|
|
152
|
-
For the ``
|
|
152
|
+
For the ``UCLA CNP VBM Testing dataset`` example, we will not specify a
|
|
153
153
|
preprocessing step.
|
|
154
154
|
|
|
155
155
|
|
|
@@ -160,22 +160,22 @@ The ``markers`` section like the ``preprocess`` section expects a list of
|
|
|
160
160
|
markers. Each Marker has a name that we can use to refer to it later,
|
|
161
161
|
and a set of parameters that will be passed to the Marker.
|
|
162
162
|
|
|
163
|
-
For the ``
|
|
164
|
-
``VBM_GM`` value for each parcel using the ``
|
|
165
|
-
|
|
166
|
-
``DMNBuckner`` network, using ``5mm`` spheres. Thus, we will
|
|
167
|
-
``markers`` section as follows:
|
|
163
|
+
For the ``UCLA CNP VBM Testing dataset`` example, we want to compute the mean
|
|
164
|
+
``VBM_GM`` value for each parcel using the ``Tian subcortical parcellation
|
|
165
|
+
(scale I, 16 parcels)``, ``Tian subcortical parcellation (scale II, 32
|
|
166
|
+
parcels)``, and the ``DMNBuckner`` network, using ``5mm`` spheres. Thus, we will
|
|
167
|
+
configure the ``markers`` section as follows:
|
|
168
168
|
|
|
169
169
|
.. code-block:: yaml
|
|
170
170
|
|
|
171
171
|
markers:
|
|
172
|
-
- name:
|
|
172
|
+
- name: TianxS1_mean
|
|
173
173
|
kind: ParcelAggregation
|
|
174
|
-
parcellation:
|
|
174
|
+
parcellation: TianxS1x3TxMNInonlinear2009cAsym
|
|
175
175
|
method: mean
|
|
176
|
-
- name:
|
|
176
|
+
- name: TianxS2_mean
|
|
177
177
|
kind: ParcelAggregation
|
|
178
|
-
parcellation:
|
|
178
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
179
179
|
method: mean
|
|
180
180
|
- name: DMNBuckner_5mm_mean
|
|
181
181
|
kind: SphereAggregation
|
|
@@ -198,13 +198,13 @@ specify where we want to store the results:
|
|
|
198
198
|
|
|
199
199
|
storage:
|
|
200
200
|
kind: HDF5FeatureStorage
|
|
201
|
-
uri: /data/junifer/example/
|
|
201
|
+
uri: /data/junifer/example/uclacnp_vbm_testing.hdf5
|
|
202
202
|
|
|
203
203
|
|
|
204
204
|
Complete Example
|
|
205
205
|
----------------
|
|
206
206
|
|
|
207
|
-
This is how the full ``
|
|
207
|
+
This is how the full ``UCLA CNP VBM Testing dataset`` example configuration file
|
|
208
208
|
looks like:
|
|
209
209
|
|
|
210
210
|
.. code-block:: yaml
|
|
@@ -214,16 +214,16 @@ looks like:
|
|
|
214
214
|
workdir: /tmp
|
|
215
215
|
|
|
216
216
|
datagrabber:
|
|
217
|
-
kind:
|
|
217
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
218
218
|
|
|
219
219
|
markers:
|
|
220
|
-
- name:
|
|
220
|
+
- name: TianxS1_mean
|
|
221
221
|
kind: ParcelAggregation
|
|
222
|
-
parcellation:
|
|
222
|
+
parcellation: TianxS1x3TxMNInonlinear2009cAsym
|
|
223
223
|
method: mean
|
|
224
|
-
- name:
|
|
224
|
+
- name: TianxS2_mean
|
|
225
225
|
kind: ParcelAggregation
|
|
226
|
-
parcellation:
|
|
226
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
227
227
|
method: mean
|
|
228
228
|
- name: DMNBuckner_5mm_mean
|
|
229
229
|
kind: SphereAggregation
|
|
@@ -233,4 +233,4 @@ looks like:
|
|
|
233
233
|
|
|
234
234
|
storage:
|
|
235
235
|
kind: HDF5FeatureStorage
|
|
236
|
-
uri: /data/junifer/example/
|
|
236
|
+
uri: /data/junifer/example/uclacnp_vbm_testing.hdf5
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Compute
|
|
3
|
-
|
|
2
|
+
Compute Parcel Aggregation.
|
|
3
|
+
===========================
|
|
4
4
|
|
|
5
|
-
This example uses the ``
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
parcel using the Schaefer parcellation (100 rois, 7 Yeo networks) for a 4D
|
|
9
|
-
NIfTI.
|
|
5
|
+
This example uses the ``ParcelAggregation`` marker to compute the mean of each
|
|
6
|
+
parcel using the Tian subcortical parcellation (scale I, 16 ROIs) for a 3D
|
|
7
|
+
NIfTI and the Schaefer parcellation (100 rois, 7 Yeo networks) for a 4D NIfTI.
|
|
10
8
|
|
|
11
9
|
Authors: Federico Raimondo, Synchon Mandal
|
|
12
10
|
|
|
@@ -15,11 +13,11 @@ License: BSD 3 clause
|
|
|
15
13
|
|
|
16
14
|
from junifer.testing.datagrabbers import (
|
|
17
15
|
ADHDTestingDataGrabber,
|
|
18
|
-
|
|
16
|
+
UCLACNPVBMTestingDataGrabber,
|
|
19
17
|
)
|
|
20
18
|
from junifer.datagrabber import DataType
|
|
21
19
|
from junifer.datareader import DefaultDataReader
|
|
22
|
-
from junifer.markers import ParcelAggregation
|
|
20
|
+
from junifer.markers import ParcelAggregation
|
|
23
21
|
from junifer.stats import AggFunc
|
|
24
22
|
from junifer.utils import configure_logging
|
|
25
23
|
|
|
@@ -29,24 +27,22 @@ from junifer.utils import configure_logging
|
|
|
29
27
|
configure_logging(level="INFO")
|
|
30
28
|
|
|
31
29
|
###############################################################################
|
|
32
|
-
# Perform
|
|
33
|
-
with
|
|
30
|
+
# Perform parcel aggregation on VBM GM data (3D) from the UCLA CNP dataset
|
|
31
|
+
with UCLACNPVBMTestingDataGrabber() as dg:
|
|
34
32
|
# Get the first element
|
|
35
33
|
element = dg.get_elements()[0]
|
|
36
34
|
# Read the element
|
|
37
35
|
element_data = DefaultDataReader().fit_transform(dg[element])
|
|
38
36
|
# Initialize marker
|
|
39
|
-
marker =
|
|
40
|
-
|
|
41
|
-
radius=5.0,
|
|
37
|
+
marker = ParcelAggregation(
|
|
38
|
+
parcellation="TianxS1x3TxMNInonlinear2009cAsym",
|
|
42
39
|
method=AggFunc.Mean,
|
|
43
|
-
masks="compute_brain_mask",
|
|
44
40
|
)
|
|
45
41
|
# Compute feature
|
|
46
42
|
feature = marker.fit_transform(element_data)
|
|
47
43
|
# Print the output
|
|
48
44
|
print(feature.keys())
|
|
49
|
-
print(feature["VBM_GM"]["aggregation"]["data"].shape) # Shape is (1 x
|
|
45
|
+
print(feature["VBM_GM"]["aggregation"]["data"].shape) # Shape is (1 x parcels)
|
|
50
46
|
|
|
51
47
|
###############################################################################
|
|
52
48
|
# Perform parcel aggregation on BOLD data (4D) from ADHD dataset
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Run junifer and julearn.
|
|
3
3
|
========================
|
|
4
4
|
|
|
5
|
-
This example uses a
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
This example uses a ParcelAggregation marker to compute the mean of each parcel
|
|
6
|
+
of the Tian subcortical parcellation (scale II, 32 ROIs) for a 3D nifti to
|
|
7
|
+
extract some features for machine learning using julearn to predict some other
|
|
8
|
+
data.
|
|
9
9
|
|
|
10
10
|
Authors: Leonard Sasse, Sami Hamdan, Nicolas Nieto, Synchon Mandal
|
|
11
11
|
|
|
@@ -14,13 +14,12 @@ License: BSD 3 clause
|
|
|
14
14
|
|
|
15
15
|
import tempfile
|
|
16
16
|
|
|
17
|
-
import nilearn
|
|
18
|
-
import pandas as pd
|
|
19
17
|
from julearn import run_cross_validation, PipelineCreator
|
|
20
18
|
|
|
21
19
|
import junifer.testing.registry # noqa: F401
|
|
22
20
|
from junifer.api import collect, run
|
|
23
21
|
from junifer.storage import HDF5FeatureStorage
|
|
22
|
+
from junifer.testing.datagrabbers import UCLACNPVBMTestingDataGrabber
|
|
24
23
|
from junifer.utils import configure_logging
|
|
25
24
|
|
|
26
25
|
|
|
@@ -34,20 +33,16 @@ configure_logging(level="INFO")
|
|
|
34
33
|
|
|
35
34
|
marker_dicts = [
|
|
36
35
|
{
|
|
37
|
-
"name": "
|
|
38
|
-
"kind": "
|
|
39
|
-
"
|
|
40
|
-
"radius": 5.0,
|
|
41
|
-
"masks": "compute_brain_mask",
|
|
36
|
+
"name": "TianxS2_TrimMean80",
|
|
37
|
+
"kind": "ParcelAggregation",
|
|
38
|
+
"parcellation": "TianxS2x3TxMNInonlinear2009cAsym",
|
|
42
39
|
"method": "trim_mean",
|
|
43
40
|
"method_params": {"proportiontocut": 0.2},
|
|
44
41
|
},
|
|
45
42
|
{
|
|
46
|
-
"name": "
|
|
47
|
-
"kind": "
|
|
48
|
-
"
|
|
49
|
-
"radius": 5.0,
|
|
50
|
-
"masks": "compute_brain_mask",
|
|
43
|
+
"name": "TianxS2_Mean",
|
|
44
|
+
"kind": "ParcelAggregation",
|
|
45
|
+
"parcellation": "TianxS2x3TxMNInonlinear2009cAsym",
|
|
51
46
|
"method": "mean",
|
|
52
47
|
},
|
|
53
48
|
]
|
|
@@ -60,15 +55,10 @@ confound = "sex"
|
|
|
60
55
|
|
|
61
56
|
|
|
62
57
|
###############################################################################
|
|
63
|
-
# Load the
|
|
64
|
-
#
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
sex = (
|
|
68
|
-
pd.Series(oasis_dataset.ext_vars["mf"][:10])
|
|
69
|
-
.map(lambda x: 1 if x == "F" else 0)
|
|
70
|
-
.values
|
|
71
|
-
)
|
|
58
|
+
# Load the phenotype data of the UCLA CNP subjects (OpenNeuro ds000030) for
|
|
59
|
+
# machine learning:
|
|
60
|
+
with UCLACNPVBMTestingDataGrabber() as dg:
|
|
61
|
+
participants = dg.get_participants()
|
|
72
62
|
|
|
73
63
|
|
|
74
64
|
###############################################################################
|
|
@@ -78,7 +68,7 @@ with tempfile.TemporaryDirectory() as tmpdir:
|
|
|
78
68
|
# run the defined junifer feature extraction pipeline
|
|
79
69
|
run(
|
|
80
70
|
workdir="/tmp",
|
|
81
|
-
datagrabber={"kind": "
|
|
71
|
+
datagrabber={"kind": "UCLACNPVBMTestingDataGrabber"},
|
|
82
72
|
markers=marker_dicts,
|
|
83
73
|
storage=storage,
|
|
84
74
|
)
|
|
@@ -88,17 +78,19 @@ with tempfile.TemporaryDirectory() as tmpdir:
|
|
|
88
78
|
collect(storage)
|
|
89
79
|
db = HDF5FeatureStorage(uri=storage["uri"])
|
|
90
80
|
|
|
91
|
-
df_vbm = db.read_df(feature_name="
|
|
92
|
-
|
|
93
|
-
df_vbm.index = oasis_subjects
|
|
81
|
+
df_vbm = db.read_df(feature_name="VBM_GM_TianxS2_Mean_aggregation")
|
|
82
|
+
df_vbm.index = [x[0] for x in df_vbm.index]
|
|
94
83
|
|
|
95
84
|
|
|
96
85
|
###############################################################################
|
|
97
86
|
# Using julearn for machine learning:
|
|
98
87
|
# We predict the age given our vbm features and sex as a confound.
|
|
99
88
|
X = list(df_vbm.columns)
|
|
100
|
-
|
|
101
|
-
df_vbm[
|
|
89
|
+
# Match the phenotypes to the subjects by their identifier
|
|
90
|
+
df_vbm[y] = participants.loc[df_vbm.index, "age"].to_numpy()
|
|
91
|
+
df_vbm[confound] = (
|
|
92
|
+
participants.loc[df_vbm.index, "gender"] == "F"
|
|
93
|
+
).to_numpy(dtype=int)
|
|
102
94
|
|
|
103
95
|
X_types = {
|
|
104
96
|
"features": X,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
UCLA CNP VBM GMD Extraction
|
|
3
|
+
===========================
|
|
4
4
|
|
|
5
5
|
Authors: Federico Raimondo
|
|
6
6
|
|
|
@@ -13,33 +13,27 @@ from junifer.api import run
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
datagrabber = {
|
|
16
|
-
"kind": "
|
|
16
|
+
"kind": "UCLACNPVBMTestingDataGrabber",
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
markers = [
|
|
20
20
|
{
|
|
21
|
-
"name": "
|
|
22
|
-
"kind": "
|
|
23
|
-
"
|
|
24
|
-
"radius": 5.0,
|
|
25
|
-
"masks": "compute_brain_mask",
|
|
21
|
+
"name": "TianxS2_TrimMean80",
|
|
22
|
+
"kind": "ParcelAggregation",
|
|
23
|
+
"parcellation": "TianxS2x3TxMNInonlinear2009cAsym",
|
|
26
24
|
"method": "trim_mean",
|
|
27
25
|
"method_params": {"proportiontocut": 0.2},
|
|
28
26
|
},
|
|
29
27
|
{
|
|
30
|
-
"name": "
|
|
31
|
-
"kind": "
|
|
32
|
-
"
|
|
33
|
-
"radius": 5.0,
|
|
34
|
-
"masks": "compute_brain_mask",
|
|
28
|
+
"name": "TianxS2_Mean",
|
|
29
|
+
"kind": "ParcelAggregation",
|
|
30
|
+
"parcellation": "TianxS2x3TxMNInonlinear2009cAsym",
|
|
35
31
|
"method": "mean",
|
|
36
32
|
},
|
|
37
33
|
{
|
|
38
|
-
"name": "
|
|
39
|
-
"kind": "
|
|
40
|
-
"
|
|
41
|
-
"radius": 5.0,
|
|
42
|
-
"masks": "compute_brain_mask",
|
|
34
|
+
"name": "TianxS2_Std",
|
|
35
|
+
"kind": "ParcelAggregation",
|
|
36
|
+
"parcellation": "TianxS2x3TxMNInonlinear2009cAsym",
|
|
43
37
|
"method": "std",
|
|
44
38
|
},
|
|
45
39
|
]
|
|
@@ -2,22 +2,22 @@ with: junifer.testing.registry
|
|
|
2
2
|
workdir: /tmp
|
|
3
3
|
|
|
4
4
|
datagrabber:
|
|
5
|
-
kind:
|
|
5
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
6
6
|
elements:
|
|
7
7
|
markers:
|
|
8
|
-
- name:
|
|
8
|
+
- name: TianxS2_TrimMean80
|
|
9
9
|
kind: ParcelAggregation
|
|
10
|
-
parcellation:
|
|
10
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
11
11
|
method: trim_mean
|
|
12
12
|
method_params:
|
|
13
13
|
proportiontocut: 0.2
|
|
14
|
-
- name:
|
|
14
|
+
- name: TianxS2_Mean
|
|
15
15
|
kind: ParcelAggregation
|
|
16
|
-
parcellation:
|
|
16
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
17
17
|
method: mean
|
|
18
|
-
- name:
|
|
18
|
+
- name: TianxS2_Std
|
|
19
19
|
kind: ParcelAggregation
|
|
20
|
-
parcellation:
|
|
20
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
21
21
|
method: std
|
|
22
22
|
storage:
|
|
23
23
|
kind: HDF5FeatureStorage
|
|
@@ -2,11 +2,11 @@ with: junifer.testing.registry
|
|
|
2
2
|
workdir: /tmp
|
|
3
3
|
|
|
4
4
|
datagrabber:
|
|
5
|
-
kind:
|
|
5
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
6
6
|
markers:
|
|
7
|
-
- name:
|
|
7
|
+
- name: TianxS2_Mean
|
|
8
8
|
kind: ParcelAggregation
|
|
9
|
-
parcellation:
|
|
9
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
10
10
|
method: mean
|
|
11
11
|
storage:
|
|
12
12
|
kind: HDF5FeatureStorage
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.0.8.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 0, 8, '
|
|
21
|
+
__version__ = version = '0.0.8.dev270'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 0, 8, 'dev270')
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'gcf60784bf'
|
|
@@ -35,6 +35,8 @@ yaml.indent(mapping=2, sequence=4, offset=2)
|
|
|
35
35
|
# Kept for parametrizing
|
|
36
36
|
_datagrabber = {
|
|
37
37
|
"kind": "PartlyCloudyTestingDataGrabber",
|
|
38
|
+
# Fewer subjects for faster tests
|
|
39
|
+
"n_subjects": 4,
|
|
38
40
|
}
|
|
39
41
|
_bids_ses_datagrabber = {
|
|
40
42
|
"kind": "PatternDataladDataGrabber",
|
|
@@ -334,10 +336,13 @@ def test_run_and_collect(
|
|
|
334
336
|
)
|
|
335
337
|
# Get datagrabber
|
|
336
338
|
dg = PipelineComponentRegistry().build_component_instance(
|
|
337
|
-
step="datagrabber",
|
|
339
|
+
step="datagrabber",
|
|
340
|
+
name=datagrabber["kind"],
|
|
341
|
+
baseclass=BaseDataGrabber,
|
|
342
|
+
init_params={k: v for k, v in datagrabber.items() if k != "kind"},
|
|
338
343
|
)
|
|
339
344
|
elements = dg.get_elements() # type: ignore
|
|
340
|
-
# This should create
|
|
345
|
+
# This should create one file per element
|
|
341
346
|
files = list(tmp_path.glob("*.sqlite"))
|
|
342
347
|
assert len(files) == len(elements)
|
|
343
348
|
# But the test.sqlite file should not exist
|
|
@@ -2,12 +2,12 @@ with: junifer.testing.registry
|
|
|
2
2
|
workdir: /tmp
|
|
3
3
|
|
|
4
4
|
datagrabber:
|
|
5
|
-
kind:
|
|
6
|
-
elements: [
|
|
5
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
6
|
+
elements: [sub-10206, sub-10339]
|
|
7
7
|
markers:
|
|
8
|
-
- name:
|
|
8
|
+
- name: TianxS2_Mean
|
|
9
9
|
kind: ParcelAggregation
|
|
10
|
-
parcellation:
|
|
10
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
11
11
|
method: mean
|
|
12
12
|
storage:
|
|
13
13
|
kind: SQLiteFeatureStorage
|
|
@@ -2,11 +2,11 @@ with: junifer.testing.registry
|
|
|
2
2
|
workdir: /tmp
|
|
3
3
|
|
|
4
4
|
datagrabber:
|
|
5
|
-
kind:
|
|
5
|
+
kind: UCLACNPVBMTestingDataGrabber
|
|
6
6
|
markers:
|
|
7
|
-
- name:
|
|
7
|
+
- name: TianxS2_Mean
|
|
8
8
|
kind: ParcelAggregation
|
|
9
|
-
parcellation:
|
|
9
|
+
parcellation: TianxS2x3TxMNInonlinear2009cAsym
|
|
10
10
|
method: mean
|
|
11
11
|
storage:
|
|
12
12
|
kind: SQLiteFeatureStorage
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
# Synchon Mandal <s.mandal@fz-juelich.de>
|
|
5
5
|
# License: AGPL
|
|
6
6
|
|
|
7
|
+
import gc
|
|
8
|
+
|
|
7
9
|
import pytest
|
|
8
10
|
|
|
9
11
|
from junifer.utils.singleton import Singleton
|
|
@@ -14,6 +16,24 @@ from junifer.utils.singleton import Singleton
|
|
|
14
16
|
collect_ignore = ["external/h5io", "external/BrainPrint"]
|
|
15
17
|
|
|
16
18
|
|
|
19
|
+
def pytest_collection_finish(session: pytest.Session) -> None:
|
|
20
|
+
"""Exclude the objects alive after collection from garbage collection.
|
|
21
|
+
|
|
22
|
+
nilearn (< 0.14) forces a full garbage collection every time it gets
|
|
23
|
+
the data of an image, which has to go over all the objects of the test
|
|
24
|
+
session (modules, collected tests, etc.). Freezing them makes these
|
|
25
|
+
collections much faster.
|
|
26
|
+
|
|
27
|
+
Parameters
|
|
28
|
+
----------
|
|
29
|
+
session : pytest.Session
|
|
30
|
+
The pytest session.
|
|
31
|
+
|
|
32
|
+
"""
|
|
33
|
+
gc.collect()
|
|
34
|
+
gc.freeze()
|
|
35
|
+
|
|
36
|
+
|
|
17
37
|
@pytest.fixture(autouse=True)
|
|
18
38
|
def reset_singletons() -> None:
|
|
19
39
|
"""Reset all singletons."""
|