junifer 0.0.5.dev183__tar.gz → 0.0.5.dev202__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.5.dev183 → junifer-0.0.5.dev202}/PKG-INFO +1 -1
- junifer-0.0.5.dev202/docs/changes/newsfragments/349.change +1 -0
- junifer-0.0.5.dev202/docs/changes/newsfragments/349.enh +1 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/marker.rst +62 -65
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/marker.rst +2 -4
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/_version.py +2 -2
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_datalad_base.py +4 -4
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_pattern_datalad.py +4 -4
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/base.py +49 -23
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/brainprint.py +56 -265
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/complexity_base.py +23 -43
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_hurst_exponent.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_multiscale_entropy_auc.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_perm_entropy.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_range_entropy.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_range_entropy_auc.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_sample_entropy.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_weighted_perm_entropy.py +4 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/ets_rss.py +24 -42
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/falff_base.py +17 -46
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/falff_parcels.py +53 -27
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/falff_spheres.py +57 -29
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/tests/test_falff_parcels.py +39 -23
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/tests/test_falff_spheres.py +39 -23
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/crossparcellation_functional_connectivity.py +32 -48
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/edge_functional_connectivity_parcels.py +16 -10
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/edge_functional_connectivity_spheres.py +13 -9
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/functional_connectivity_base.py +26 -40
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/functional_connectivity_parcels.py +6 -6
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/functional_connectivity_spheres.py +6 -6
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_crossparcellation_functional_connectivity.py +8 -4
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_parcels.py +6 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_edge_functional_connectivity_spheres.py +6 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_parcels.py +6 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_spheres.py +10 -5
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/parcel_aggregation.py +40 -59
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/reho_base.py +6 -27
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/reho_parcels.py +23 -15
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/reho_spheres.py +22 -16
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/tests/test_reho_parcels.py +8 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/tests/test_reho_spheres.py +8 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/sphere_aggregation.py +40 -59
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/temporal_snr_base.py +20 -32
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/temporal_snr_parcels.py +6 -6
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/temporal_snr_spheres.py +6 -6
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py +6 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py +6 -3
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_brainprint.py +23 -12
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_collection.py +9 -8
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_ets_rss.py +15 -9
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_markers_base.py +17 -18
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_parcel_aggregation.py +93 -32
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_sphere_aggregation.py +72 -19
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/pipeline_step_mixin.py +11 -1
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/tests/test_registry.py +1 -1
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/PKG-INFO +1 -1
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/SOURCES.txt +2 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/bug-report.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/dataset-request.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/documention-request.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/feature-request.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/ISSUE_TEMPLATE/marker-request.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/dependabot.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/pull_request_template.md +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/ci-docs.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/ci.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/docs-preview.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/docs.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/lint.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.github/workflows/pypi.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.gitignore +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.gitmodules +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/.pre-commit-config.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/AUTHORS.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/LICENSE.md +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/README.md +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/codecov.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/conda-env.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/Makefile +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/_static/css/custom.css +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/_static/js/custom.js +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/_templates/versions.html +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/api.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/configs.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/data.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/datagrabbers.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/datareaders.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/index.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/markers.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/nilearn.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/onthefly.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/pipeline.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/preprocessing.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/stats.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/storage.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/testing.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/api/utils.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/builtin.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/contributors.inc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/.gitignore +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/115.doc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/136.enh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/161.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/273.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/318.misc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/323.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/324.bugfix +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/327.doc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/330.doc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/331.bugfix +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/332.bugfix +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/336.removal +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/337.misc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/339.bugfix +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/340.bugfix +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/341.enh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/342.misc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/343.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/344.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/345.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/346.enh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/346.feature +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/347.misc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/changes/newsfragments/350.enh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/conf.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/contribution.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/coordinates.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/datagrabber.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/dependencies.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/extension.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/index.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/masks.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/parcellations.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/extending/preprocessor.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/faq.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/help.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/images/junifer_logo.png +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/index.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/installation.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/links.inc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/maintaining.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/redirect.html +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/sphinxext/gh_substitutions.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/starting.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/data.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/datagrabber.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/datareader.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/index.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/pipeline.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/preprocess.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/understanding/storage.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/using/codeless.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/using/index.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/using/masks.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/using/queueing.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/using/running.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/docs/whats_new.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/README.rst +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/norun_hcpfc_pearson.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/norun_ukbvm_gmd.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/run_compute_parcel_mean.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/run_datagrabber_bids_datalad.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/run_ets_rss_marker.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/run_junifer_julearn.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/run_run_gmd_mean.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/yamls/gmd_mean.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/yamls/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/yamls/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/examples/yamls/ukb_gmd_mean.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/ignore_words.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/cli.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/decorators.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/functions.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/parser.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/htcondor_adapter.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/queue_context_adapter.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/tests/test_gnu_parallel_local_adapter.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/queue_context/tests/test_htcondor_adapter.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/afni/3dAFNItoNIFTI +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/afni/3dRSFC +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/afni/3dReHo +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/afni/afni +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/afni/run_afni_docker.sh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/ants/ResampleImage +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/ants/antsApplyTransforms +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/ants/antsApplyTransformsToPoints +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/ants/run_ants_docker.sh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/freesurfer/mri_binarize +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/freesurfer/mri_mc +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/freesurfer/mri_pretess +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/freesurfer/mris_convert +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/freesurfer/run_freesurfer_docker.sh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/fsl/applywarp +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/fsl/flirt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/fsl/img2imgcoord +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/fsl/run_fsl_docker.sh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/fsl/std2imgcoord +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/run_conda.bash +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/run_conda.zsh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/run_venv.bash +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/res/run_venv.zsh +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/data/gmd_mean.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/data/gmd_mean_htcondor.yaml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/data/partly_cloudy_agg_mean_tian.yml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/test_api_utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/test_cli.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/test_functions.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/tests/test_parser.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/api/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/aomic_id1000_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/camcan_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/ixi_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/tests/test_aomic_id1000_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/tests/test_camcan_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/tests/test_ixi_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/tests/test_ucla.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/ucla.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/configs/juseless/datagrabbers/ukb_vbm.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/AutobiographicalMemory_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/CogAC_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/CogAR_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/DMNBuckner_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Dosenbach2010_MNI_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Empathy_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Motor_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/MultiTask_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/PhysioStress_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Power2011_MNI_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Power2013_MNI_VOIs.tsv +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Rew_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/Somatosensory_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/ToM_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/VigAtt_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/WM_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/eMDN_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/eSAD_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/VOIs/meta/extDMN_VOIs.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/coordinates.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/masks/ukb/UKB_15K_GM_template.nii.gz +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean.nii.gz +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.nii.gz +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/masks.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/parcellations.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/template_spaces.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/tests/test_coordinates.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/tests/test_data_utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/tests/test_masks.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/tests/test_parcellations.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/tests/test_template_spaces.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/data/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/id1000.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/piop1.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/piop2.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/tests/test_id1000.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/tests/test_piop1.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/aomic/tests/test_piop2.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/datalad_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/dmcc13_benchmark.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/hcp1200/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/hcp1200/datalad_hcp1200.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/hcp1200/hcp1200.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/hcp1200/tests/test_hcp1200.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/multiple.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/pattern.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/pattern_datalad.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_datagrabber_utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_dmcc13_benchmark.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_multiple.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_pattern.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datareader/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datareader/default.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datareader/tests/test_default_reader.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/_version.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/asymmetry.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/brainprint.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/surfaces.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/utils/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/utils/_config.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/BrainPrint/brainprint/utils/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/h5io/h5io/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/h5io/h5io/_h5io.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/h5io/h5io/_version.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/h5io/h5io/chunked_array.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/h5io/h5io/chunked_list.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/nilearn/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/nilearn/junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/external/nilearn/tests/test_junifer_nifti_spheres_masker.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/collection.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/hurst_exponent.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/multiscale_entropy_auc.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/perm_entropy.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/range_entropy.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/range_entropy_auc.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/sample_entropy.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/tests/test_complexity_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/complexity/weighted_perm_entropy.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/_afni_falff.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/falff/_junifer_falff.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/functional_connectivity/tests/test_functional_connectivity_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/_afni_reho.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/reho/_junifer_reho.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/temporal_snr/tests/test_temporal_snr_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/tests/test_marker_utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/markers/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/onthefly/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/onthefly/read_transform.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/onthefly/tests/test_read_transform.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/registry.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/singleton.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/tests/test_pipeline_step_mixin.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/tests/test_update_meta_mixin.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/tests/test_workdir_manager.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/update_meta_mixin.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/pipeline/workdir_manager.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/confounds/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/confounds/fmriprep_confound_remover.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/confounds/tests/test_fmriprep_confound_remover.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/_afni_smoothing.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/_fsl_smoothing.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/_nilearn_smoothing.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/smoothing.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/smoothing/tests/test_smoothing.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/tests/test_preprocess_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/warping/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/warping/_ants_warper.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/warping/_fsl_warper.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/warping/space_warper.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/preprocess/warping/tests/test_space_warper.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/stats.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/hdf5.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/pandas_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/sqlite.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/tests/test_hdf5.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/tests/test_pandas_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/tests/test_sqlite.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/tests/test_storage_base.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/tests/test_utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/storage/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/data/sub-0001_task-anticipation_acq-seq_desc-confounds_regressors.tsv +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/datagrabbers.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/registry.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/tests/test_oasisvmbtesting_datagrabber.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/tests/test_partlycloudytesting_datagrabber.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/tests/test_spmauditory_datagrabber.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/tests/test_testing_registry.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/testing/utils.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/tests/test_main.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/tests/test_stats.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/__init__.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/fs.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/helpers.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/logging.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/tests/test_fs.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/tests/test_helpers.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/utils/tests/test_logging.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/dependency_links.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/entry_points.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/requires.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer.egg-info/top_level.txt +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/pyproject.toml +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/setup.cfg +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/setup.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_aomic1000_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_aomicpiop1_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_aomicpiop2_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_bids_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_bids_example_dataset_sessions.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_dmcc13_benchmark_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tools/create_hcp1200_example_dataset.py +0 -0
- {junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/tox.ini +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: junifer
|
3
|
-
Version: 0.0.5.
|
3
|
+
Version: 0.0.5.dev202
|
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
|
+
``fractional`` parameter for ``ALFFBase``, :class:`.ALFFParcels` and :class:`.ALFFSpheres` have been removed in favour of returning both ALFF and fALFF by `Synchon Mandal`_
|
@@ -0,0 +1 @@
|
|
1
|
+
Enable Markers to output multiple features by `Synchon Mandal`_
|
@@ -5,24 +5,17 @@
|
|
5
5
|
Creating Markers
|
6
6
|
================
|
7
7
|
|
8
|
-
Computing a marker (a.k.a. *feature*) is the main goal of ``junifer``. While
|
9
|
-
aim to provide as many Markers as possible, it might be the case that the
|
10
|
-
you are looking for is not available. In this case, you can create your
|
11
|
-
by following this tutorial.
|
8
|
+
Computing a marker (a.k.a. *feature(s)*) is the main goal of ``junifer``. While
|
9
|
+
we aim to provide as many Markers as possible, it might be the case that the
|
10
|
+
Marker you are looking for is not available. In this case, you can create your
|
11
|
+
own Marker by following this tutorial.
|
12
12
|
|
13
13
|
Most of the functionality of a ``junifer`` Marker has been taken care by the
|
14
|
-
:class:`.BaseMarker` class. Thus, only a few methods are
|
15
|
-
|
16
|
-
|
17
|
-
Marker. This is used to check that the inputs provided by the user are
|
18
|
-
valid. This method should return a list of strings, representing
|
19
|
-
:ref:`data types <data_types>`.
|
20
|
-
#. ``get_output_type``: The method to obtain the output type of the Marker.
|
21
|
-
This is used to check that the output of the Marker is compatible with the
|
22
|
-
storage. This method should return a string, representing
|
23
|
-
:ref:`storage types <storage_types>`.
|
24
|
-
#. ``compute``: The method that given the data, computes the Marker.
|
14
|
+
:class:`.BaseMarker` class. Thus, only a few methods and class attributes are
|
15
|
+
required:
|
16
|
+
|
25
17
|
#. ``__init__``: The initialisation method, where the Marker is configured.
|
18
|
+
#. ``compute``: The method that given the data, computes the Marker.
|
26
19
|
|
27
20
|
As an example, we will develop a ``ParcelMean`` Marker, a Marker that first
|
28
21
|
applies a parcellation and then computes the mean of the data in each parcel.
|
@@ -35,24 +28,26 @@ Step 1: Configure input and output
|
|
35
28
|
|
36
29
|
This step is quite simple: we need to define the input and output of the Marker.
|
37
30
|
Based on the current :ref:`data types <data_types>`, we can have ``BOLD``,
|
38
|
-
``VBM_WM`` and ``VBM_GM`` as valid inputs.
|
31
|
+
``VBM_WM`` and ``VBM_GM`` as valid inputs. The output of the Marker depends on
|
32
|
+
the input. For ``BOLD``, it will be ``timeseries``, while for the rest of the
|
33
|
+
inputs, it will be ``vector``. Thus, we have a class attribute like so:
|
39
34
|
|
40
35
|
.. code-block:: python
|
41
36
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
37
|
+
# NOTE: data type -> feature -> storage type
|
38
|
+
# You can have multiple features for one data type,
|
39
|
+
# each feature having same or different storage type
|
40
|
+
_MARKER_INOUT_MAPPINGS = {
|
41
|
+
"BOLD": {
|
42
|
+
"parcel_mean": "timeseries",
|
43
|
+
},
|
44
|
+
"VBM_WM": {
|
45
|
+
"parcel_mean": "vector",
|
46
|
+
},
|
47
|
+
"VBM_GM": {
|
48
|
+
"parcel_mean": "vector",
|
49
|
+
},
|
50
|
+
}
|
56
51
|
|
57
52
|
.. _extending_markers_init:
|
58
53
|
|
@@ -119,7 +114,8 @@ arguments:
|
|
119
114
|
Following the example, we will compute the mean of the data in each parcel using
|
120
115
|
:class:`nilearn.maskers.NiftiLabelsMasker`. Importantly, the output of the
|
121
116
|
compute function must be a dictionary. This dictionary will later be passed onto
|
122
|
-
the ``store`` method.
|
117
|
+
the ``store`` method. The dictionary's first level of keys would the feature name
|
118
|
+
and the values would be a dictionary of storage type specific key-value pairs.
|
123
119
|
|
124
120
|
.. hint::
|
125
121
|
|
@@ -162,11 +158,13 @@ the ``store`` method.
|
|
162
158
|
# mask the data
|
163
159
|
out_values = masker.fit_transform([data])
|
164
160
|
|
165
|
-
# Create the output dictionary
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
161
|
+
# Create and return the output dictionary
|
162
|
+
return {
|
163
|
+
"parcel_mean": {
|
164
|
+
"data": out_values,
|
165
|
+
"col_names": t_labels,
|
166
|
+
},
|
167
|
+
}
|
170
168
|
|
171
169
|
.. _extending_markers_finalize:
|
172
170
|
|
@@ -193,11 +191,11 @@ Finally, we need to register the Marker using the ``@register_marker`` decorator
|
|
193
191
|
|
194
192
|
.. code-block:: python
|
195
193
|
|
196
|
-
from typing import Any
|
194
|
+
from typing import Any, ClassVar
|
197
195
|
|
198
196
|
from junifer.api.decorators import register_marker
|
199
197
|
from junifer.data import get_parcellation
|
200
|
-
from junifer.markers
|
198
|
+
from junifer.markers import BaseMarker
|
201
199
|
from nilearn.maskers import NiftiLabelsMasker
|
202
200
|
|
203
201
|
|
@@ -206,6 +204,18 @@ Finally, we need to register the Marker using the ``@register_marker`` decorator
|
|
206
204
|
|
207
205
|
_DEPENDENCIES = {"nilearn", "numpy"}
|
208
206
|
|
207
|
+
_MARKER_INOUT_MAPPINGS: ClassVar[dict[str, dict[str, str]]] = {
|
208
|
+
"BOLD": {
|
209
|
+
"parcel_mean": "timeseries",
|
210
|
+
},
|
211
|
+
"VBM_WM": {
|
212
|
+
"parcel_mean": "vector",
|
213
|
+
},
|
214
|
+
"VBM_GM": {
|
215
|
+
"parcel_mean": "vector",
|
216
|
+
},
|
217
|
+
}
|
218
|
+
|
209
219
|
def __init__(
|
210
220
|
self,
|
211
221
|
parcellation: str,
|
@@ -215,15 +225,6 @@ Finally, we need to register the Marker using the ``@register_marker`` decorator
|
|
215
225
|
self.parcellation = parcellation
|
216
226
|
super().__init__(on=on, name=name)
|
217
227
|
|
218
|
-
def get_valid_inputs(self) -> list[str]:
|
219
|
-
return ["BOLD", "VBM_WM", "VBM_GM"]
|
220
|
-
|
221
|
-
def get_output_type(self, input_type: str) -> str:
|
222
|
-
if input_type == "BOLD":
|
223
|
-
return "timeseries"
|
224
|
-
else:
|
225
|
-
return "vector"
|
226
|
-
|
227
228
|
def compute(
|
228
229
|
self,
|
229
230
|
input: dict[str, Any],
|
@@ -250,11 +251,13 @@ Finally, we need to register the Marker using the ``@register_marker`` decorator
|
|
250
251
|
# mask the data
|
251
252
|
out_values = masker.fit_transform([data])
|
252
253
|
|
253
|
-
# Create the output dictionary
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
254
|
+
# Create and return the output dictionary
|
255
|
+
return {
|
256
|
+
"parcel_mean": {
|
257
|
+
"data": out_values,
|
258
|
+
"col_names": t_labels,
|
259
|
+
},
|
260
|
+
}
|
258
261
|
|
259
262
|
.. _extending_markers_template:
|
260
263
|
|
@@ -269,22 +272,16 @@ Template for a custom Marker
|
|
269
272
|
|
270
273
|
@register_marker
|
271
274
|
class TemplateMarker(BaseMarker):
|
275
|
+
|
276
|
+
# TODO: add the dependencies
|
277
|
+
_DEPENDENCIES = {}
|
278
|
+
|
279
|
+
# TODO: add the input-output mappings
|
280
|
+
_MARKER_INOUT_MAPPINGS = {}
|
281
|
+
|
272
282
|
def __init__(self, on=None, name=None):
|
273
283
|
# TODO: add marker-specific parameters
|
274
284
|
super().__init__(on=on, name=name)
|
275
285
|
|
276
|
-
def get_valid_inputs(self):
|
277
|
-
# TODO: Complete with the valid inputs
|
278
|
-
valid = []
|
279
|
-
return valid
|
280
|
-
|
281
|
-
def get_output_type(self, input_type):
|
282
|
-
# TODO: Return the valid output type for each input type
|
283
|
-
pass
|
284
|
-
|
285
286
|
def compute(self, input, extra_input):
|
286
287
|
# TODO: compute the marker and create the output dictionary
|
287
|
-
|
288
|
-
# Create the output dictionary
|
289
|
-
out = {"data": None, "col_names": None}
|
290
|
-
return out
|
@@ -26,7 +26,5 @@ on them outside the context as long as the actual data is in the memory and the
|
|
26
26
|
Python runtime has not garbage-collected it.
|
27
27
|
|
28
28
|
If you are interested in using already provided Markers, please go to
|
29
|
-
:doc:`../builtin`. And, if you want to implement your own Marker,
|
30
|
-
|
31
|
-
need to override ``get_valid_inputs``, ``get_output_type`` and ``compute``
|
32
|
-
methods.
|
29
|
+
:doc:`../builtin`. And, if you want to implement your own Marker, please check
|
30
|
+
out :doc:`../extending/marker`.
|
@@ -12,5 +12,5 @@ __version__: str
|
|
12
12
|
__version_tuple__: VERSION_TUPLE
|
13
13
|
version_tuple: VERSION_TUPLE
|
14
14
|
|
15
|
-
__version__ = version = '0.0.5.
|
16
|
-
__version_tuple__ = version_tuple = (0, 0, 5, '
|
15
|
+
__version__ = version = '0.0.5.dev202'
|
16
|
+
__version_tuple__ = version_tuple = (0, 0, 5, 'dev202')
|
{junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_datalad_base.py
RENAMED
@@ -15,13 +15,13 @@ from junifer.datagrabber import DataladDataGrabber
|
|
15
15
|
_testing_dataset = {
|
16
16
|
"example_bids": {
|
17
17
|
"uri": "https://gin.g-node.org/juaml/datalad-example-bids",
|
18
|
-
"commit": "
|
19
|
-
"id": "
|
18
|
+
"commit": "b87897cbe51bf0ee5514becaa5c7dd76491db5ad",
|
19
|
+
"id": "8fddff30-6993-420a-9d1e-b5b028c59468",
|
20
20
|
},
|
21
21
|
"example_bids_ses": {
|
22
22
|
"uri": "https://gin.g-node.org/juaml/datalad-example-bids-ses",
|
23
|
-
"commit": "
|
24
|
-
"id": "
|
23
|
+
"commit": "6b163aa98af76a9eac0272273c27e14127850181",
|
24
|
+
"id": "715c17cf-a1b9-42d6-9af8-9f74c1a4a724",
|
25
25
|
},
|
26
26
|
}
|
27
27
|
|
{junifer-0.0.5.dev183 → junifer-0.0.5.dev202}/junifer/datagrabber/tests/test_pattern_datalad.py
RENAMED
@@ -15,13 +15,13 @@ from junifer.datagrabber import PatternDataladDataGrabber
|
|
15
15
|
_testing_dataset = {
|
16
16
|
"example_bids": {
|
17
17
|
"uri": "https://gin.g-node.org/juaml/datalad-example-bids",
|
18
|
-
"commit": "
|
19
|
-
"id": "
|
18
|
+
"commit": "b87897cbe51bf0ee5514becaa5c7dd76491db5ad",
|
19
|
+
"id": "8fddff30-6993-420a-9d1e-b5b028c59468",
|
20
20
|
},
|
21
21
|
"example_bids_ses": {
|
22
22
|
"uri": "https://gin.g-node.org/juaml/datalad-example-bids-ses",
|
23
|
-
"commit": "
|
24
|
-
"id": "
|
23
|
+
"commit": "6b163aa98af76a9eac0272273c27e14127850181",
|
24
|
+
"id": "715c17cf-a1b9-42d6-9af8-9f74c1a4a724",
|
25
25
|
},
|
26
26
|
}
|
27
27
|
|
@@ -5,6 +5,7 @@
|
|
5
5
|
# License: AGPL
|
6
6
|
|
7
7
|
from abc import ABC, abstractmethod
|
8
|
+
from copy import deepcopy
|
8
9
|
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Union
|
9
10
|
|
10
11
|
from ..pipeline import PipelineStepMixin, UpdateMetaMixin
|
@@ -35,6 +36,8 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
35
36
|
|
36
37
|
Raises
|
37
38
|
------
|
39
|
+
AttributeError
|
40
|
+
If the marker does not have `_MARKER_INOUT_MAPPINGS` attribute.
|
38
41
|
ValueError
|
39
42
|
If required input data type(s) is(are) not found.
|
40
43
|
|
@@ -45,6 +48,12 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
45
48
|
on: Optional[Union[List[str], str]] = None,
|
46
49
|
name: Optional[str] = None,
|
47
50
|
) -> None:
|
51
|
+
# Check for missing mapping attribute
|
52
|
+
if not hasattr(self, "_MARKER_INOUT_MAPPINGS"):
|
53
|
+
raise_error(
|
54
|
+
msg=("Missing `_MARKER_INOUT_MAPPINGS` for the marker"),
|
55
|
+
klass=AttributeError,
|
56
|
+
)
|
48
57
|
# Use all data types if not provided
|
49
58
|
if on is None:
|
50
59
|
on = self.get_valid_inputs()
|
@@ -88,7 +97,6 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
88
97
|
)
|
89
98
|
return [x for x in self._on if x in input]
|
90
99
|
|
91
|
-
@abstractmethod
|
92
100
|
def get_valid_inputs(self) -> List[str]:
|
93
101
|
"""Get valid data types for input.
|
94
102
|
|
@@ -98,30 +106,25 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
98
106
|
The list of data types that can be used as input for this marker.
|
99
107
|
|
100
108
|
"""
|
101
|
-
|
102
|
-
msg="Concrete classes need to implement get_valid_inputs().",
|
103
|
-
klass=NotImplementedError,
|
104
|
-
)
|
109
|
+
return list(self._MARKER_INOUT_MAPPINGS.keys())
|
105
110
|
|
106
|
-
|
107
|
-
def get_output_type(self, input_type: str) -> str:
|
111
|
+
def get_output_type(self, input_type: str, output_feature: str) -> str:
|
108
112
|
"""Get output type.
|
109
113
|
|
110
114
|
Parameters
|
111
115
|
----------
|
112
116
|
input_type : str
|
113
117
|
The data type input to the marker.
|
118
|
+
output_feature : str
|
119
|
+
The feature output of the marker.
|
114
120
|
|
115
121
|
Returns
|
116
122
|
-------
|
117
123
|
str
|
118
|
-
The storage type output
|
124
|
+
The storage type output of the marker.
|
119
125
|
|
120
126
|
"""
|
121
|
-
|
122
|
-
msg="Concrete classes need to implement get_output_type().",
|
123
|
-
klass=NotImplementedError,
|
124
|
-
)
|
127
|
+
return self._MARKER_INOUT_MAPPINGS[input_type][output_feature]
|
125
128
|
|
126
129
|
@abstractmethod
|
127
130
|
def compute(self, input: Dict, extra_input: Optional[Dict] = None) -> Dict:
|
@@ -154,6 +157,7 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
154
157
|
def store(
|
155
158
|
self,
|
156
159
|
type_: str,
|
160
|
+
feature: str,
|
157
161
|
out: Dict[str, Any],
|
158
162
|
storage: "BaseFeatureStorage",
|
159
163
|
) -> None:
|
@@ -163,13 +167,15 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
163
167
|
----------
|
164
168
|
type_ : str
|
165
169
|
The data type to store.
|
170
|
+
feature : str
|
171
|
+
The feature to store.
|
166
172
|
out : dict
|
167
173
|
The computed result as a dictionary to store.
|
168
174
|
storage : storage-like
|
169
175
|
The storage class, for example, SQLiteFeatureStorage.
|
170
176
|
|
171
177
|
"""
|
172
|
-
output_type_ = self.get_output_type(type_)
|
178
|
+
output_type_ = self.get_output_type(type_, feature)
|
173
179
|
logger.debug(f"Storing {output_type_} in {storage}")
|
174
180
|
storage.store(kind=output_type_, **out)
|
175
181
|
|
@@ -213,15 +219,35 @@ class BaseMarker(ABC, PipelineStepMixin, UpdateMetaMixin):
|
|
213
219
|
t_meta["type"] = type_
|
214
220
|
# Compute marker
|
215
221
|
t_out = self.compute(input=t_input, extra_input=extra_input)
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
#
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
222
|
+
# Initialize empty dictionary if no storage object is provided
|
223
|
+
if storage is None:
|
224
|
+
out[type_] = {}
|
225
|
+
# Store individual features
|
226
|
+
for feature_name, feature_data in t_out.items():
|
227
|
+
# Make deep copy of the feature data for manipulation
|
228
|
+
feature_data_copy = deepcopy(feature_data)
|
229
|
+
# Make deep copy of metadata and add to feature data
|
230
|
+
feature_data_copy["meta"] = deepcopy(t_meta)
|
231
|
+
# Update metadata for the feature,
|
232
|
+
# feature data is not manipulated, only meta
|
233
|
+
self.update_meta(feature_data_copy, "marker")
|
234
|
+
# Update marker feature's metadata name
|
235
|
+
feature_data_copy["meta"]["marker"][
|
236
|
+
"name"
|
237
|
+
] += f"_{feature_name}"
|
238
|
+
|
239
|
+
if storage is not None:
|
240
|
+
logger.info(f"Storing in {storage}")
|
241
|
+
self.store(
|
242
|
+
type_=type_,
|
243
|
+
feature=feature_name,
|
244
|
+
out=feature_data_copy,
|
245
|
+
storage=storage,
|
246
|
+
)
|
247
|
+
else:
|
248
|
+
logger.info(
|
249
|
+
"No storage specified, returning dictionary"
|
250
|
+
)
|
251
|
+
out[type_][feature_name] = feature_data_copy
|
226
252
|
|
227
253
|
return out
|