junifer 0.0.7.dev264__tar.gz → 0.0.7.dev294__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.7.dev264 → junifer-0.0.7.dev294}/PKG-INFO +1 -1
- junifer-0.0.7.dev294/docs/changes/newsfragments/472.enh +1 -0
- junifer-0.0.7.dev294/docs/changes/newsfragments/476.enh +1 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/storage.rst +10 -6
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/_version.py +3 -3
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datareader/default.py +0 -17
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datareader/tests/test_default_reader.py +0 -1
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/pipeline_step_mixin.py +2 -20
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -27
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/base.py +0 -17
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -7
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/base.py +52 -49
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/hdf5.py +75 -99
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/pandas_base.py +19 -25
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/sqlite.py +32 -43
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/tests/test_hdf5.py +3 -3
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/tests/test_sqlite.py +1 -1
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/tests/test_storage_base.py +12 -10
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/utils.py +25 -15
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/PKG-INFO +1 -1
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/SOURCES.txt +2 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.dockerignore +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/dependabot.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/pull_request_template.md +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/check-stale.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/docker-ci-publish.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/docker-docs-publish.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.github/workflows/publish.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.gitignore +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.gitmodules +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/AUTHORS.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/Dockerfile-ci +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/Dockerfile-docs +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/LICENSE.md +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/README.md +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/codecov.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/conda-env.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/Makefile +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/_templates/versions.html +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/api.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/cli.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/configs.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/data.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/index.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/markers.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/stats.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/storage.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/testing.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/api/utils.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/builtin.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/231.change +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/231.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/257.change +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/257.enh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/333.enh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/429.change +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/429.enh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/432.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/441.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/443.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/444.bugfix +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/450.doc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/450.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/451.doc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/451.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/452.doc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/452.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/454.bugfix +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/456.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/457.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/458.change +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/458.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/458.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/460.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/462.feature +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/464.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/465.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/466.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/467.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/468.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/470.enh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/470.misc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/changes/newsfragments/473.enh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/conf.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/contribution.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/data_dump_asset.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/data_registries.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/data_types.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/extension.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/index.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/maps.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/marker.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/masks.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/plugins.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/faq.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/help.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/index.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/installation.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/links.inc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/maintaining.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/redirect.html +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/starting.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/data.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/index.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/marker.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/codeless.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/configuring.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/dumping.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/index.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/masks.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/queueing.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/using/running.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/docs/whats_new.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/README.rst +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/ignore_words.txt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/decorators.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/functions.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/tests/test_decorators.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/cli.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/parser.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/test_cli.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/test_cli_utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/tests/test_parser.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/cli/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/configs/juseless/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/conftest.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/_dispatch.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/_ants_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/_coordinates.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/_fsl_coordinates_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/coordinates/tests/test_coordinates.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/_ants_maps_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/_fsl_maps_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/maps/tests/test_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/_ants_mask_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/_fsl_mask_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/_masks.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/masks/tests/test_masks.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/_ants_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/_fsl_parcellation_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/_parcellations.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/parcellations/tests/test_parcellations.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/pipeline_data_registry_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/tests/test_dispatch.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/data/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_datalad_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_pattern_datalad.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datagrabber/tests/test_pattern_validation_mixin.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datareader/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/datareader/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/tests/test_junifer_connectivity_measure.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/brainprint.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/complexity_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_hurst_exponent.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_perm_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_range_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_range_entropy_auc.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_sample_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/ets_rss.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/_afni_falff.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/_junifer_falff.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/falff_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/falff_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/falff_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/falff_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/tests/test_falff_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/tests/test_falff_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/falff/tests/test_falff_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/maps_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/_afni_reho.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/_junifer_reho.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/reho_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/reho_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/reho_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/reho_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/tests/test_reho_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/tests/test_reho_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/reho/tests/test_reho_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/tests/test_temporal_snr_maps.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_brainprint.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_ets_rss.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_maps_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_markers_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_parcel_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/tests/test_sphere_aggregation.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/markers/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/onthefly/_brainprint.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/marker_collection.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_data_object_dumper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_marker_collection.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_pipeline_component_registry.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/_temporal_filter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/_temporal_slicer.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/confounds/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/confounds/fmriprep_confound_remover.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/confounds/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/smoothing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/tests/test_temporal_filter.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/tests/test_temporal_slicer.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/_ants_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/_fsl_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/space_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/stats.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/registry.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/testing/utils.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/typing/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/typing/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/typing/_typing.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/__init__.pyi +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/_config.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/_yaml.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/fs.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/logging.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/py.typed +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/singleton.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/tests/test_config.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/pyproject.toml +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/setup.cfg +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/setup.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: junifer
|
|
3
|
-
Version: 0.0.7.
|
|
3
|
+
Version: 0.0.7.dev294
|
|
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>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Simplify ``Storage`` interface and implementations by `Synchon Mandal`_
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Simplify :class:`.PipelineStepMixin` interface by `Synchon Mandal`_
|
|
@@ -17,11 +17,11 @@ Storage is meant to be used inside the DataGrabber context but you can operate
|
|
|
17
17
|
on them outside the context as long as the processed data is in the memory and
|
|
18
18
|
the Python runtime has not garbage-collected it.
|
|
19
19
|
|
|
20
|
-
The :ref:`Markers <marker>` are responsible for
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
specific *storage
|
|
20
|
+
The :ref:`Markers <marker>` are responsible for mapping the input
|
|
21
|
+
:ref:`data type <data_types>` to its output :ref:`storage type <storage_types>`
|
|
22
|
+
as shown :ref:`here <extending_markers_input_output>`.
|
|
23
|
+
The storage object in turn declares and provides implementation for
|
|
24
|
+
specific *storage type*. For example, :class:`.SQLiteFeatureStorage` supports
|
|
25
25
|
saving ``matrix``, ``vector`` and ``timeseries`` via ``store_matrix``,
|
|
26
26
|
``store_vector`` and ``store_timeseries`` methods respectively.
|
|
27
27
|
|
|
@@ -57,6 +57,10 @@ Storage Types
|
|
|
57
57
|
- A 2D square or non-square matrix of scalar values with column names
|
|
58
58
|
- ``col_names``
|
|
59
59
|
- :meth:`.BaseFeatureStorage.store_timeseries`
|
|
60
|
+
* - ``timeseries_2d``
|
|
61
|
+
- A 3D(2D+1D) square or non-square matrix of scalar values with column names across sessions
|
|
62
|
+
- ``col_names``
|
|
63
|
+
- :meth:`.BaseFeatureStorage.store_timeseries_2d`
|
|
60
64
|
* - ``scalar_table``
|
|
61
65
|
- | A 2D square or non-square matrix of scalar values with row name, column
|
|
62
66
|
| name and row header column name
|
|
@@ -83,4 +87,4 @@ Storage Interfaces
|
|
|
83
87
|
* - :class:`.HDF5FeatureStorage`
|
|
84
88
|
- ``.hdf5``
|
|
85
89
|
- HDF5
|
|
86
|
-
- ``matrix``, ``vector``, ``timeseries``, ``scalar_table``
|
|
90
|
+
- ``matrix``, ``vector``, ``timeseries``, ``timeseries_2d``, ``scalar_table``
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.0.7.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 0, 7, '
|
|
31
|
+
__version__ = version = '0.0.7.dev294'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 0, 7, 'dev294')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'gbb87fb782'
|
|
@@ -56,23 +56,6 @@ class DefaultDataReader(PipelineStepMixin, UpdateMetaMixin):
|
|
|
56
56
|
# Nothing to validate, any input is fine
|
|
57
57
|
return input
|
|
58
58
|
|
|
59
|
-
def get_output_type(self, input_type: str) -> str:
|
|
60
|
-
"""Get output type.
|
|
61
|
-
|
|
62
|
-
Parameters
|
|
63
|
-
----------
|
|
64
|
-
input_type : str
|
|
65
|
-
The data type input to the reader.
|
|
66
|
-
|
|
67
|
-
Returns
|
|
68
|
-
-------
|
|
69
|
-
str
|
|
70
|
-
The data type output by the reader.
|
|
71
|
-
|
|
72
|
-
"""
|
|
73
|
-
# It will output the same type of data as the input
|
|
74
|
-
return input_type
|
|
75
|
-
|
|
76
59
|
def _fit_transform(
|
|
77
60
|
self,
|
|
78
61
|
input: dict[str, dict],
|
|
@@ -53,25 +53,6 @@ class PipelineStepMixin:
|
|
|
53
53
|
klass=NotImplementedError,
|
|
54
54
|
) # pragma: no cover
|
|
55
55
|
|
|
56
|
-
def get_output_type(self, input_type: str) -> str:
|
|
57
|
-
"""Get output type.
|
|
58
|
-
|
|
59
|
-
Parameters
|
|
60
|
-
----------
|
|
61
|
-
input_type : str
|
|
62
|
-
The data type input to the marker.
|
|
63
|
-
|
|
64
|
-
Returns
|
|
65
|
-
-------
|
|
66
|
-
str
|
|
67
|
-
The storage type output by the marker.
|
|
68
|
-
|
|
69
|
-
"""
|
|
70
|
-
raise_error(
|
|
71
|
-
msg="Concrete classes need to implement get_output_type().",
|
|
72
|
-
klass=NotImplementedError,
|
|
73
|
-
) # pragma: no cover
|
|
74
|
-
|
|
75
56
|
def _fit_transform(
|
|
76
57
|
self,
|
|
77
58
|
input: dict[str, dict],
|
|
@@ -223,8 +204,9 @@ class PipelineStepMixin:
|
|
|
223
204
|
for val in self._MARKER_INOUT_MAPPINGS[t_input].values()
|
|
224
205
|
}
|
|
225
206
|
)
|
|
207
|
+
# Only for datareader and preprocessor
|
|
226
208
|
else:
|
|
227
|
-
outputs =
|
|
209
|
+
outputs = fit_input
|
|
228
210
|
return outputs
|
|
229
211
|
|
|
230
212
|
def fit_transform(
|
{junifer-0.0.7.dev264 → junifer-0.0.7.dev294}/junifer/pipeline/tests/test_pipeline_step_mixin.py
RENAMED
|
@@ -29,9 +29,6 @@ def test_PipelineStepMixin_correct_dependencies() -> None:
|
|
|
29
29
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
30
30
|
return input
|
|
31
31
|
|
|
32
|
-
def get_output_type(self, input_type: str) -> str:
|
|
33
|
-
return input_type
|
|
34
|
-
|
|
35
32
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
36
33
|
return {"input": input}
|
|
37
34
|
|
|
@@ -50,9 +47,6 @@ def test_PipelineStepMixin_incorrect_dependencies() -> None:
|
|
|
50
47
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
51
48
|
return input
|
|
52
49
|
|
|
53
|
-
def get_output_type(self, input_type: str) -> str:
|
|
54
|
-
return input_type
|
|
55
|
-
|
|
56
50
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
57
51
|
return {"input": input}
|
|
58
52
|
|
|
@@ -75,9 +69,6 @@ def test_PipelineStepMixin_correct_ext_dependencies() -> None:
|
|
|
75
69
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
76
70
|
return input
|
|
77
71
|
|
|
78
|
-
def get_output_type(self, input_type: str) -> str:
|
|
79
|
-
return input_type
|
|
80
|
-
|
|
81
72
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
82
73
|
return {"input": input}
|
|
83
74
|
|
|
@@ -101,9 +92,6 @@ def test_PipelineStepMixin_ext_deps_correct_commands() -> None:
|
|
|
101
92
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
102
93
|
return input
|
|
103
94
|
|
|
104
|
-
def get_output_type(self, input_type: str) -> str:
|
|
105
|
-
return input_type
|
|
106
|
-
|
|
107
95
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
108
96
|
return {"input": input}
|
|
109
97
|
|
|
@@ -129,9 +117,6 @@ def test_PipelineStepMixin_ext_deps_incorrect_commands() -> None:
|
|
|
129
117
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
130
118
|
return input
|
|
131
119
|
|
|
132
|
-
def get_output_type(self, input_type: str) -> str:
|
|
133
|
-
return input_type
|
|
134
|
-
|
|
135
120
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
136
121
|
return {"input": input}
|
|
137
122
|
|
|
@@ -153,9 +138,6 @@ def test_PipelineStepMixin_incorrect_ext_dependencies() -> None:
|
|
|
153
138
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
154
139
|
return input
|
|
155
140
|
|
|
156
|
-
def get_output_type(self, input_type: str) -> str:
|
|
157
|
-
return input_type
|
|
158
|
-
|
|
159
141
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
160
142
|
return {"input": input}
|
|
161
143
|
|
|
@@ -185,9 +167,6 @@ def test_PipelineStepMixin_correct_conditional_dependencies() -> None:
|
|
|
185
167
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
186
168
|
return input
|
|
187
169
|
|
|
188
|
-
def get_output_type(self, input_type: str) -> str:
|
|
189
|
-
return input_type
|
|
190
|
-
|
|
191
170
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
192
171
|
return {"input": input}
|
|
193
172
|
|
|
@@ -214,9 +193,6 @@ def test_PipelineStepMixin_incorrect_conditional_dependencies() -> None:
|
|
|
214
193
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
215
194
|
return input
|
|
216
195
|
|
|
217
|
-
def get_output_type(self, input_type: str) -> str:
|
|
218
|
-
return input_type
|
|
219
|
-
|
|
220
196
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
221
197
|
return {"input": input}
|
|
222
198
|
|
|
@@ -249,9 +225,6 @@ def test_PipelineStepMixin_correct_conditional_ext_dependencies() -> None:
|
|
|
249
225
|
def validate_input(self, input: list[str]) -> list[str]:
|
|
250
226
|
return input
|
|
251
227
|
|
|
252
|
-
def get_output_type(self, input_type: str) -> str:
|
|
253
|
-
return input_type
|
|
254
|
-
|
|
255
228
|
def _fit_transform(self, input: dict[str, dict]) -> dict[str, dict]:
|
|
256
229
|
return {"input": input}
|
|
257
230
|
|
|
@@ -115,23 +115,6 @@ class BasePreprocessor(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
|
115
115
|
"""
|
|
116
116
|
return list(self._VALID_DATA_TYPES)
|
|
117
117
|
|
|
118
|
-
def get_output_type(self, input_type: str) -> str:
|
|
119
|
-
"""Get output type.
|
|
120
|
-
|
|
121
|
-
Parameters
|
|
122
|
-
----------
|
|
123
|
-
input_type : str
|
|
124
|
-
The data type input to the preprocessor.
|
|
125
|
-
|
|
126
|
-
Returns
|
|
127
|
-
-------
|
|
128
|
-
str
|
|
129
|
-
The data type output by the preprocessor.
|
|
130
|
-
|
|
131
|
-
"""
|
|
132
|
-
# Does not add any new keys
|
|
133
|
-
return input_type
|
|
134
|
-
|
|
135
118
|
@abstractmethod
|
|
136
119
|
def preprocess(
|
|
137
120
|
self,
|
|
@@ -65,13 +65,6 @@ def test_fMRIPrepConfoundRemover_get_valid_inputs() -> None:
|
|
|
65
65
|
assert confound_remover.get_valid_inputs() == ["BOLD"]
|
|
66
66
|
|
|
67
67
|
|
|
68
|
-
def test_fMRIPrepConfoundRemover_get_output_type() -> None:
|
|
69
|
-
"""Test fMRIPrepConfoundRemover get_output_type."""
|
|
70
|
-
confound_remover = fMRIPrepConfoundRemover()
|
|
71
|
-
# Confound remover works in place
|
|
72
|
-
assert confound_remover.get_output_type("BOLD") == "BOLD"
|
|
73
|
-
|
|
74
|
-
|
|
75
68
|
def test_fMRIPrepConfoundRemover__map_adhoc_to_fmriprep() -> None:
|
|
76
69
|
"""Test fMRIPrepConfoundRemover adhoc to fmriprep spec mapping."""
|
|
77
70
|
confound_remover = fMRIPrepConfoundRemover()
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
# License: AGPL
|
|
6
6
|
|
|
7
7
|
from abc import ABC, abstractmethod
|
|
8
|
-
from collections.abc import
|
|
8
|
+
from collections.abc import Sequence
|
|
9
9
|
from pathlib import Path
|
|
10
|
-
from typing import Any, Optional, Union
|
|
10
|
+
from typing import Any, ClassVar, Optional, Union
|
|
11
11
|
|
|
12
12
|
import numpy as np
|
|
13
13
|
import pandas as pd
|
|
14
14
|
|
|
15
|
-
from ..utils import raise_error
|
|
15
|
+
from ..utils import logger, raise_error
|
|
16
16
|
from .utils import process_meta
|
|
17
17
|
|
|
18
18
|
|
|
@@ -22,44 +22,47 @@ __all__ = ["BaseFeatureStorage"]
|
|
|
22
22
|
class BaseFeatureStorage(ABC):
|
|
23
23
|
"""Abstract base class for feature storage.
|
|
24
24
|
|
|
25
|
-
For every
|
|
25
|
+
For every storage, one needs to provide a concrete
|
|
26
26
|
implementation of this abstract class.
|
|
27
27
|
|
|
28
28
|
Parameters
|
|
29
29
|
----------
|
|
30
30
|
uri : str or pathlib.Path
|
|
31
31
|
The path to the storage.
|
|
32
|
-
storage_types : str or list of str
|
|
33
|
-
The available storage types for the class.
|
|
34
32
|
single_output : bool, optional
|
|
35
33
|
Whether to have single output (default True).
|
|
36
34
|
|
|
37
35
|
Raises
|
|
38
36
|
------
|
|
39
|
-
|
|
40
|
-
If
|
|
37
|
+
AttributeError
|
|
38
|
+
If the storage does not have `_STORAGE_TYPES` attribute.
|
|
41
39
|
|
|
42
40
|
"""
|
|
43
41
|
|
|
42
|
+
_STORAGE_TYPES: ClassVar[Sequence[str]]
|
|
43
|
+
|
|
44
44
|
def __init__(
|
|
45
45
|
self,
|
|
46
46
|
uri: Union[str, Path],
|
|
47
|
-
storage_types: Union[list[str], str],
|
|
48
47
|
single_output: bool = True,
|
|
49
48
|
) -> None:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if not isinstance(storage_types, list):
|
|
53
|
-
storage_types = [storage_types]
|
|
54
|
-
# Check if required inputs are found
|
|
55
|
-
if any(x not in self.get_valid_inputs() for x in storage_types):
|
|
56
|
-
wrong_storage_types = [
|
|
57
|
-
x for x in storage_types if x not in self.get_valid_inputs()
|
|
58
|
-
]
|
|
49
|
+
# Check for missing storage types attribute
|
|
50
|
+
if not hasattr(self, "_STORAGE_TYPES"):
|
|
59
51
|
raise_error(
|
|
60
|
-
|
|
52
|
+
msg="Missing `_STORAGE_TYPES` for the storage",
|
|
53
|
+
klass=AttributeError,
|
|
54
|
+
)
|
|
55
|
+
# Convert str to Path
|
|
56
|
+
if not isinstance(uri, Path):
|
|
57
|
+
uri = Path(uri)
|
|
58
|
+
self.uri = uri
|
|
59
|
+
# Create parent directories if not present
|
|
60
|
+
if not self.uri.parent.exists():
|
|
61
|
+
logger.info(
|
|
62
|
+
f"Output directory: '{self.uri.parent.resolve()}' "
|
|
63
|
+
"does not exist, creating now"
|
|
61
64
|
)
|
|
62
|
-
|
|
65
|
+
self.uri.parent.mkdir(parents=True, exist_ok=True)
|
|
63
66
|
self.single_output = single_output
|
|
64
67
|
|
|
65
68
|
def get_valid_inputs(self) -> list[str]:
|
|
@@ -69,13 +72,10 @@ class BaseFeatureStorage(ABC):
|
|
|
69
72
|
-------
|
|
70
73
|
list of str
|
|
71
74
|
The list of storage types that can be used as input for this
|
|
72
|
-
storage
|
|
75
|
+
storage.
|
|
73
76
|
|
|
74
77
|
"""
|
|
75
|
-
|
|
76
|
-
msg="Concrete classes need to implement get_valid_inputs().",
|
|
77
|
-
klass=NotImplementedError,
|
|
78
|
-
)
|
|
78
|
+
return list(self._STORAGE_TYPES)
|
|
79
79
|
|
|
80
80
|
def validate(self, input_: list[str]) -> None:
|
|
81
81
|
"""Validate the input to the pipeline step.
|
|
@@ -91,11 +91,12 @@ class BaseFeatureStorage(ABC):
|
|
|
91
91
|
If the ``input_`` is invalid.
|
|
92
92
|
|
|
93
93
|
"""
|
|
94
|
-
|
|
94
|
+
# self._STORAGE_TYPES should be there already
|
|
95
|
+
if not any(x in input_ for x in self._STORAGE_TYPES):
|
|
95
96
|
raise_error(
|
|
96
97
|
"Input does not have the required data."
|
|
97
98
|
f"\t Input: {input}"
|
|
98
|
-
f"\t Required (any of): {self.
|
|
99
|
+
f"\t Required (any of): {self._STORAGE_TYPES}"
|
|
99
100
|
)
|
|
100
101
|
|
|
101
102
|
@abstractmethod
|
|
@@ -113,7 +114,7 @@ class BaseFeatureStorage(ABC):
|
|
|
113
114
|
raise_error(
|
|
114
115
|
msg="Concrete classes need to implement list_features().",
|
|
115
116
|
klass=NotImplementedError,
|
|
116
|
-
)
|
|
117
|
+
) # pragma: no cover
|
|
117
118
|
|
|
118
119
|
@abstractmethod
|
|
119
120
|
def read(
|
|
@@ -141,7 +142,7 @@ class BaseFeatureStorage(ABC):
|
|
|
141
142
|
raise_error(
|
|
142
143
|
msg="Concrete classes need to implement read().",
|
|
143
144
|
klass=NotImplementedError,
|
|
144
|
-
)
|
|
145
|
+
) # pragma: no cover
|
|
145
146
|
|
|
146
147
|
@abstractmethod
|
|
147
148
|
def read_df(
|
|
@@ -167,7 +168,7 @@ class BaseFeatureStorage(ABC):
|
|
|
167
168
|
raise_error(
|
|
168
169
|
msg="Concrete classes need to implement read_df().",
|
|
169
170
|
klass=NotImplementedError,
|
|
170
|
-
)
|
|
171
|
+
) # pragma: no cover
|
|
171
172
|
|
|
172
173
|
@abstractmethod
|
|
173
174
|
def store_metadata(self, meta_md5: str, element: dict, meta: dict) -> None:
|
|
@@ -186,7 +187,7 @@ class BaseFeatureStorage(ABC):
|
|
|
186
187
|
raise_error(
|
|
187
188
|
msg="Concrete classes need to implement store_metadata().",
|
|
188
189
|
klass=NotImplementedError,
|
|
189
|
-
)
|
|
190
|
+
) # pragma: no cover
|
|
190
191
|
|
|
191
192
|
def store(self, kind: str, **kwargs) -> None:
|
|
192
193
|
"""Store extracted features data.
|
|
@@ -206,14 +207,16 @@ class BaseFeatureStorage(ABC):
|
|
|
206
207
|
"""
|
|
207
208
|
# Do the check before calling the abstract methods, otherwise the
|
|
208
209
|
# meta might be stored even if the data is not stored.
|
|
209
|
-
if kind not in self.
|
|
210
|
+
if kind not in self._STORAGE_TYPES:
|
|
210
211
|
raise_error(
|
|
211
212
|
msg=f"I don't know how to store {kind}.",
|
|
212
213
|
klass=ValueError,
|
|
213
214
|
)
|
|
215
|
+
# Process and store metadata
|
|
214
216
|
t_meta = kwargs.pop("meta")
|
|
215
217
|
meta_md5, t_meta, t_element = process_meta(t_meta)
|
|
216
218
|
self.store_metadata(meta_md5=meta_md5, element=t_element, meta=t_meta)
|
|
219
|
+
# Store data
|
|
217
220
|
if kind == "matrix":
|
|
218
221
|
self.store_matrix(meta_md5=meta_md5, element=t_element, **kwargs)
|
|
219
222
|
elif kind == "timeseries":
|
|
@@ -236,8 +239,8 @@ class BaseFeatureStorage(ABC):
|
|
|
236
239
|
meta_md5: str,
|
|
237
240
|
element: dict,
|
|
238
241
|
data: np.ndarray,
|
|
239
|
-
col_names: Optional[
|
|
240
|
-
row_names: Optional[
|
|
242
|
+
col_names: Optional[Sequence[str]] = None,
|
|
243
|
+
row_names: Optional[Sequence[str]] = None,
|
|
241
244
|
matrix_kind: str = "full",
|
|
242
245
|
diagonal: bool = True,
|
|
243
246
|
) -> None:
|
|
@@ -251,9 +254,9 @@ class BaseFeatureStorage(ABC):
|
|
|
251
254
|
The element as a dictionary.
|
|
252
255
|
data : numpy.ndarray
|
|
253
256
|
The matrix data to store.
|
|
254
|
-
col_names : list
|
|
257
|
+
col_names : list-like of str, optional
|
|
255
258
|
The column labels (default None).
|
|
256
|
-
row_names : str, optional
|
|
259
|
+
row_names : list-like of str, optional
|
|
257
260
|
The row labels (default None).
|
|
258
261
|
matrix_kind : str, optional
|
|
259
262
|
The kind of matrix:
|
|
@@ -278,7 +281,7 @@ class BaseFeatureStorage(ABC):
|
|
|
278
281
|
meta_md5: str,
|
|
279
282
|
element: dict,
|
|
280
283
|
data: Union[np.ndarray, list],
|
|
281
|
-
col_names: Optional[
|
|
284
|
+
col_names: Optional[Sequence[str]] = None,
|
|
282
285
|
) -> None:
|
|
283
286
|
"""Store vector.
|
|
284
287
|
|
|
@@ -290,7 +293,7 @@ class BaseFeatureStorage(ABC):
|
|
|
290
293
|
The element as a dictionary.
|
|
291
294
|
data : numpy.ndarray or list
|
|
292
295
|
The vector data to store.
|
|
293
|
-
col_names : list
|
|
296
|
+
col_names : list-like of str, optional
|
|
294
297
|
The column labels (default None).
|
|
295
298
|
|
|
296
299
|
"""
|
|
@@ -304,7 +307,7 @@ class BaseFeatureStorage(ABC):
|
|
|
304
307
|
meta_md5: str,
|
|
305
308
|
element: dict,
|
|
306
309
|
data: np.ndarray,
|
|
307
|
-
col_names: Optional[
|
|
310
|
+
col_names: Optional[Sequence[str]] = None,
|
|
308
311
|
) -> None:
|
|
309
312
|
"""Store timeseries.
|
|
310
313
|
|
|
@@ -316,7 +319,7 @@ class BaseFeatureStorage(ABC):
|
|
|
316
319
|
The element as a dictionary.
|
|
317
320
|
data : numpy.ndarray
|
|
318
321
|
The timeseries data to store.
|
|
319
|
-
col_names : list
|
|
322
|
+
col_names : list-like of str, optional
|
|
320
323
|
The column labels (default None).
|
|
321
324
|
|
|
322
325
|
"""
|
|
@@ -330,8 +333,8 @@ class BaseFeatureStorage(ABC):
|
|
|
330
333
|
meta_md5: str,
|
|
331
334
|
element: dict,
|
|
332
335
|
data: np.ndarray,
|
|
333
|
-
col_names: Optional[
|
|
334
|
-
row_names: Optional[
|
|
336
|
+
col_names: Optional[Sequence[str]] = None,
|
|
337
|
+
row_names: Optional[Sequence[str]] = None,
|
|
335
338
|
) -> None:
|
|
336
339
|
"""Store 2D timeseries.
|
|
337
340
|
|
|
@@ -343,9 +346,9 @@ class BaseFeatureStorage(ABC):
|
|
|
343
346
|
The element as a dictionary.
|
|
344
347
|
data : numpy.ndarray
|
|
345
348
|
The timeseries data to store.
|
|
346
|
-
col_names : list
|
|
349
|
+
col_names : list-like of str, optional
|
|
347
350
|
The column labels (default None).
|
|
348
|
-
row_names : list
|
|
351
|
+
row_names : list-like of str, optional
|
|
349
352
|
The row labels (default None).
|
|
350
353
|
|
|
351
354
|
"""
|
|
@@ -359,8 +362,8 @@ class BaseFeatureStorage(ABC):
|
|
|
359
362
|
meta_md5: str,
|
|
360
363
|
element: dict,
|
|
361
364
|
data: np.ndarray,
|
|
362
|
-
col_names: Optional[
|
|
363
|
-
row_names: Optional[
|
|
365
|
+
col_names: Optional[Sequence[str]] = None,
|
|
366
|
+
row_names: Optional[Sequence[str]] = None,
|
|
364
367
|
row_header_col_name: Optional[str] = "feature",
|
|
365
368
|
) -> None:
|
|
366
369
|
"""Store table with scalar values.
|
|
@@ -373,9 +376,9 @@ class BaseFeatureStorage(ABC):
|
|
|
373
376
|
The element as a dictionary.
|
|
374
377
|
data : numpy.ndarray
|
|
375
378
|
The timeseries data to store.
|
|
376
|
-
col_names : list
|
|
379
|
+
col_names : list-like of str, optional
|
|
377
380
|
The column labels (default None).
|
|
378
|
-
row_names : str, optional
|
|
381
|
+
row_names : list-like of str, optional
|
|
379
382
|
The row labels (default None).
|
|
380
383
|
row_header_col_name : str, optional
|
|
381
384
|
The column name for the row header column (default "feature").
|
|
@@ -392,7 +395,7 @@ class BaseFeatureStorage(ABC):
|
|
|
392
395
|
raise_error(
|
|
393
396
|
msg="Concrete classes need to implement collect().",
|
|
394
397
|
klass=NotImplementedError,
|
|
395
|
-
)
|
|
398
|
+
) # pragma: no cover
|
|
396
399
|
|
|
397
400
|
def __str__(self) -> str:
|
|
398
401
|
"""Represent object as string.
|