Follow the datasets BIDS convention for participants/sessions #325

Merged
fraimondo merged 4 commits from fix/bids into main 2024-04-05 15:06:25 +00:00
18 changed files with 200 additions and 199 deletions

View file

@ -0,0 +1 @@
Change the subject and session patterns for :class:`.DataladAOMICID1000`, :class:`.DataladAOMICPIOP1`, :class:`.DataladAOMICPIOP2` and :class:`.DMCC13Benchmark` so that they are consistent with their own ``"participants.tsv"`` file by `Fede Raimondo`_

View file

@ -33,7 +33,7 @@ class JuselessDataladAOMICID1000VBM(PatternDataladDataGrabber):
patterns = {
"VBM_GM": {
"pattern": (
"sub-{subject}/mri/mwp1sub-{subject}_run-2_T1w.nii.gz"
"{subject}/mri/mwp1{subject}_run-2_T1w.nii.gz"
),
"space": "IXI549Space",
},

View file

@ -36,7 +36,7 @@ class JuselessDataladCamCANVBM(PatternDataladDataGrabber):
replacements = ["subject"]
patterns = {
"VBM_GM": {
"pattern": "sub-{subject}/mri/m0wp1sub-{subject}.nii.gz",
"pattern": "{subject}/mri/m0wp1{subject}.nii.gz",
"space": "IXI549Space",
},
}

View file

@ -45,7 +45,7 @@ class JuselessDataladIXIVBM(PatternDataladDataGrabber):
patterns = {
"VBM_GM": {
"pattern": (
"{site}/sub-{subject}/mri/m0wp1sub-{subject}.nii.gz"
"{site}/{subject}/mri/m0wp1{subject}.nii.gz"
),
"space": "IXI549Space",
},

View file

@ -72,42 +72,42 @@ class JuselessUCLA(PatternDataGrabber):
patterns = {
"BOLD": {
"pattern": (
"sub-{subject}/func/sub-{subject}_task-{task}_bold_space-"
"{subject}/func/{subject}_task-{task}_bold_space-"
"MNI152NLin2009cAsym_preproc.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"BOLD_confounds": {
"pattern": (
"sub-{subject}/func/sub-{subject}_"
"{subject}/func/{subject}_"
"task-{task}_bold_confounds.tsv"
),
"space": "fmriprep",
},
"T1w": {
"pattern": (
"sub-{subject}/anat/sub-{subject}_"
"{subject}/anat/{subject}_"
"T1w_space-MNI152NLin2009cAsym_preproc.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_CSF": {
"pattern": (
"sub-{subject}/anat/sub-{subject}_T1w_space-"
"{subject}/anat/{subject}_T1w_space-"
"MNI152NLin2009cAsym_class-CSF_probtissue.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_GM": {
"pattern": (
"sub-{subject}/anat/sub-{subject}_T1w_space-"
"{subject}/anat/{subject}_T1w_space-"
"MNI152NLin2009cAsym_class-GM_probtissue.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_WM": {
"pattern": (
"sub-{subject}/anat/sub-{subject}_T1w_space"
"{subject}/anat/{subject}_T1w_space"
"-MNI152NLin2009cAsym_class-WM_probtissue.nii.gz"
),
"space": "MNI152NLin2009cAsym",

View file

@ -34,7 +34,7 @@ class JuselessDataladUKBVBM(PatternDataladDataGrabber):
replacements = ["subject", "session"]
patterns = {
"VBM_GM": {
"pattern": "m0wp1sub-{subject}_ses-{session}_T1w.nii.gz",
"pattern": "m0wp1{subject}_ses-{session}_T1w.nii.gz",
"space": "IXI549Space",
},
}

View file

@ -96,14 +96,14 @@ def test_compute_brain_mask_for_native(mask_type: str) -> None:
"""
with DMCC13Benchmark(
types=["BOLD"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=True,
) as dg:
element_data = DefaultDataReader().fit_transform(
dg[("f1031ax", "wave1bas", "Rest", "AP", "1")]
dg[("sub-f1031ax", "ses-wave1bas", "Rest", "AP", "1")]
)
mask = compute_brain_mask(
target_data=element_data["BOLD"],

View file

@ -43,8 +43,8 @@ class DataladAOMICID1000(PatternDataladDataGrabber):
patterns = {
"BOLD": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-moviewatching_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-moviewatching_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -52,16 +52,16 @@ class DataladAOMICID1000(PatternDataladDataGrabber):
},
"BOLD_confounds": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-moviewatching_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-moviewatching_"
"desc-confounds_regressors.tsv"
),
"format": "fmriprep",
},
"BOLD_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-moviewatching_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-moviewatching_"
"space-MNI152NLin2009cAsym_"
"desc-brain_mask.nii.gz"
),
@ -69,8 +69,8 @@ class DataladAOMICID1000(PatternDataladDataGrabber):
},
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -78,40 +78,40 @@ class DataladAOMICID1000(PatternDataladDataGrabber):
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_CSF": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_GM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_WM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"DWI": {
"pattern": (
"derivatives/dwipreproc/sub-{subject}/dwi/"
"sub-{subject}_desc-preproc_dwi.nii.gz"
"derivatives/dwipreproc/{subject}/dwi/"
"{subject}_desc-preproc_dwi.nii.gz"
),
},
}
@ -123,23 +123,23 @@ class DataladAOMICID1000(PatternDataladDataGrabber):
{
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-preproc_T1w.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-preproc_T1w.nii.gz"
),
"space": "native",
"mask_item": "T1w_mask",
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-brain_mask.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-brain_mask.nii.gz"
),
"space": "native",
},
"Warp": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"mode-image_xfm.h5"
),
"src": "MNI152NLin2009cAsym",

View file

@ -79,8 +79,8 @@ class DataladAOMICPIOP1(PatternDataladDataGrabber):
patterns = {
"BOLD": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -88,24 +88,24 @@ class DataladAOMICPIOP1(PatternDataladDataGrabber):
},
"BOLD_confounds": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"desc-confounds_regressors.tsv"
),
"format": "fmriprep",
},
"BOLD_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -113,40 +113,40 @@ class DataladAOMICPIOP1(PatternDataladDataGrabber):
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_CSF": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_GM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_WM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"DWI": {
"pattern": (
"derivatives/dwipreproc/sub-{subject}/dwi/"
"sub-{subject}_desc-preproc_dwi.nii.gz"
"derivatives/dwipreproc/{subject}/dwi/"
"{subject}_desc-preproc_dwi.nii.gz"
),
},
}
@ -158,23 +158,23 @@ class DataladAOMICPIOP1(PatternDataladDataGrabber):
{
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-preproc_T1w.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-preproc_T1w.nii.gz"
),
"space": "native",
"mask_item": "T1w_mask",
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-brain_mask.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-brain_mask.nii.gz"
),
"space": "native",
},
"Warp": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"mode-image_xfm.h5"
),
"src": "MNI152NLin2009cAsym",
@ -242,7 +242,7 @@ class DataladAOMICPIOP1(PatternDataladDataGrabber):
The list of subjects in the dataset.
"""
subjects = [f"{x:04d}" for x in range(1, 217)]
subjects = [f"sub-{x:04d}" for x in range(1, 217)]
elems = []
for subject, task in product(subjects, self.tasks):
elems.append((subject, task))

View file

@ -76,8 +76,8 @@ class DataladAOMICPIOP2(PatternDataladDataGrabber):
patterns = {
"BOLD": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -85,24 +85,24 @@ class DataladAOMICPIOP2(PatternDataladDataGrabber):
},
"BOLD_confounds": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"desc-confounds_regressors.tsv"
),
"format": "fmriprep",
},
"BOLD_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/func/"
"sub-{subject}_task-{task}_"
"derivatives/fmriprep/{subject}/func/"
"{subject}_task-{task}_"
"space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
),
"space": "MNI152NLin2009cAsym",
@ -110,40 +110,40 @@ class DataladAOMICPIOP2(PatternDataladDataGrabber):
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_"
"desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_CSF": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_GM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_WM": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"DWI": {
"pattern": (
"derivatives/dwipreproc/sub-{subject}/dwi/"
"sub-{subject}_desc-preproc_dwi.nii.gz"
"derivatives/dwipreproc/{subject}/dwi/"
"{subject}_desc-preproc_dwi.nii.gz"
),
},
}
@ -155,23 +155,23 @@ class DataladAOMICPIOP2(PatternDataladDataGrabber):
{
"T1w": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-preproc_T1w.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-preproc_T1w.nii.gz"
),
"space": "native",
"mask_item": "T1w_mask",
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_desc-brain_mask.nii.gz"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_desc-brain_mask.nii.gz"
),
"space": "native",
},
"Warp": {
"pattern": (
"derivatives/fmriprep/sub-{subject}/anat/"
"sub-{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"derivatives/fmriprep/{subject}/anat/"
"{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"mode-image_xfm.h5"
),
"src": "MNI152NLin2009cAsym",
@ -208,7 +208,7 @@ class DataladAOMICPIOP2(PatternDataladDataGrabber):
imposing constraints based on specified tasks.
"""
subjects = [f"{x:04d}" for x in range(1, 227)]
subjects = [f"sub-{x:04d}" for x in range(1, 227)]
elems = []
for subject, task in product(subjects, self.tasks):
elems.append((subject, task))

View file

@ -34,7 +34,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["BOLD"]["path"].name
== f"sub-{test_element}_task-moviewatching_"
== f"{test_element}_task-moviewatching_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
)
@ -46,7 +46,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["BOLD_confounds"]["path"].name
== f"sub-{test_element}_task-moviewatching_"
== f"{test_element}_task-moviewatching_"
"desc-confounds_regressors.tsv"
)
@ -61,7 +61,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["T1w"]["path"].name
== f"sub-{test_element}_space-MNI152NLin2009cAsym_"
== f"{test_element}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
)
@ -76,7 +76,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["VBM_CSF"]["path"].name
== f"sub-{test_element}_space-MNI152NLin2009cAsym_label-"
== f"{test_element}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
)
@ -88,7 +88,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["VBM_GM"]["path"].name
== f"sub-{test_element}_space-MNI152NLin2009cAsym_label-"
== f"{test_element}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
)
@ -100,7 +100,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["VBM_WM"]["path"].name
== f"sub-{test_element}_space-MNI152NLin2009cAsym_label-"
== f"{test_element}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
)
@ -112,7 +112,7 @@ def test_DataladAOMICID1000() -> None:
assert (
out["DWI"]["path"].name
== f"sub-{test_element}_desc-preproc_dwi.nii.gz"
== f"{test_element}_desc-preproc_dwi.nii.gz"
)
assert out["DWI"]["path"].exists()

View file

@ -56,7 +56,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
acq = task_acqs[task]
new_task = f"{task}_acq-{acq}"
assert (
out["BOLD"]["path"].name == f"sub-{sub}_task-{new_task}_"
out["BOLD"]["path"].name == f"{sub}_task-{new_task}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
)
@ -67,7 +67,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
assert "BOLD_confounds" in out
assert (
out["BOLD_confounds"]["path"].name == f"sub-{sub}_task-{new_task}_"
out["BOLD_confounds"]["path"].name == f"{sub}_task-{new_task}_"
"desc-confounds_regressors.tsv"
)
@ -81,7 +81,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
assert "T1w" in out
assert (
out["T1w"]["path"].name == f"sub-{sub}_space-MNI152NLin2009cAsym_"
out["T1w"]["path"].name == f"{sub}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
)
@ -96,7 +96,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
assert (
out["VBM_CSF"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
)
@ -108,7 +108,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
assert (
out["VBM_GM"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
)
@ -120,7 +120,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
assert (
out["VBM_WM"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
)
@ -130,7 +130,7 @@ def test_DataladAOMICPIOP1(tasks: Optional[str]) -> None:
# asserts type "DWI"
assert "DWI" in out
assert out["DWI"]["path"].name == f"sub-{sub}_desc-preproc_dwi.nii.gz"
assert out["DWI"]["path"].name == f"{sub}_desc-preproc_dwi.nii.gz"
assert out["DWI"]["path"].exists()
assert out["DWI"]["path"].is_file()

View file

@ -50,7 +50,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
new_task = f"{task}_acq-seq"
assert (
out["BOLD"]["path"].name == f"sub-{sub}_task-{new_task}_"
out["BOLD"]["path"].name == f"{sub}_task-{new_task}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
)
@ -61,7 +61,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
assert "BOLD_confounds" in out
assert (
out["BOLD_confounds"]["path"].name == f"sub-{sub}_task-{new_task}_"
out["BOLD_confounds"]["path"].name == f"{sub}_task-{new_task}_"
"desc-confounds_regressors.tsv"
)
@ -75,7 +75,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
assert "T1w" in out
assert (
out["T1w"]["path"].name == f"sub-{sub}_space-MNI152NLin2009cAsym_"
out["T1w"]["path"].name == f"{sub}_space-MNI152NLin2009cAsym_"
"desc-preproc_T1w.nii.gz"
)
@ -90,7 +90,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
assert (
out["VBM_CSF"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"CSF_probseg.nii.gz"
)
@ -102,7 +102,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
assert (
out["VBM_GM"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"GM_probseg.nii.gz"
)
@ -114,7 +114,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
assert (
out["VBM_WM"]["path"].name
== f"sub-{sub}_space-MNI152NLin2009cAsym_label-"
== f"{sub}_space-MNI152NLin2009cAsym_label-"
"WM_probseg.nii.gz"
)
@ -124,7 +124,7 @@ def test_DataladAOMICPIOP2(tasks: Optional[str]) -> None:
# asserts type "DWI"
assert "DWI" in out
assert out["DWI"]["path"].name == f"sub-{sub}_desc-preproc_dwi.nii.gz"
assert out["DWI"]["path"].name == f"{sub}_desc-preproc_dwi.nii.gz"
assert out["DWI"]["path"].exists()
assert out["DWI"]["path"].is_file()

View file

@ -29,8 +29,8 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
"VBM_WM"} or a list of the options, optional
DMCC data types. If None, all available data types are selected.
(default None).
sessions: {"wave1bas", "wave1pro", "wave1rea"} or list of the options, \
optional
sessions: {"ses-wave1bas", "ses-wave1pro", "ses-wave1rea"} or list of \
the options, optional
DMCC sessions. If None, all available sessions are selected
(default None).
tasks: {"Rest", "Axcpt", "Cuedts", "Stern", "Stroop"} or \
@ -68,9 +68,9 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
) -> None:
# Declare all sessions
all_sessions = [
"wave1bas",
"wave1pro",
"wave1rea",
"ses-wave1bas",
"ses-wave1pro",
"ses-wave1rea",
]
# Set default sessions
if sessions is None:
@ -141,8 +141,8 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
patterns = {
"BOLD": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/ses-{session}/"
"func/sub-{subject}_ses-{session}_task-{task}_acq-mb4"
"derivatives/fmriprep-1.3.2/{subject}/{session}/"
"func/{subject}_{session}_task-{task}_acq-mb4"
"{phase_encoding}_run-{run}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
),
@ -151,16 +151,16 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
},
"BOLD_confounds": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/ses-{session}/"
"func/sub-{subject}_ses-{session}_task-{task}_acq-mb4"
"derivatives/fmriprep-1.3.2/{subject}/{session}/"
"func/{subject}_{session}_task-{task}_acq-mb4"
"{phase_encoding}_run-{run}_desc-confounds_regressors.tsv"
),
"format": "fmriprep",
},
"BOLD_mask": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/ses-{session}/"
"/func/sub-{subject}_ses-{session}_task-{task}_acq-mb4"
"derivatives/fmriprep-1.3.2/{subject}/{session}/"
"/func/{subject}_{session}_task-{task}_acq-mb4"
"{phase_encoding}_run-{run}_"
"space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
),
@ -168,37 +168,37 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
},
"T1w": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_desc-preproc_T1w.nii.gz"
),
"space": "MNI152NLin2009cAsym",
"mask_item": "T1w_mask",
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_CSF": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-CSF_probseg.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-CSF_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_GM": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-GM_probseg.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-GM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
"VBM_WM": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_space-MNI152NLin2009cAsym_label-WM_probseg.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_space-MNI152NLin2009cAsym_label-WM_probseg.nii.gz"
),
"space": "MNI152NLin2009cAsym",
},
@ -211,23 +211,23 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
{
"T1w": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_desc-preproc_T1w.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_desc-preproc_T1w.nii.gz"
),
"space": "native",
"mask_item": "T1w_mask",
},
"T1w_mask": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_desc-brain_mask.nii.gz"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_desc-brain_mask.nii.gz"
),
"space": "native",
},
"Warp": {
"pattern": (
"derivatives/fmriprep-1.3.2/sub-{subject}/anat/"
"sub-{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"derivatives/fmriprep-1.3.2/{subject}/anat/"
"{subject}_from-MNI152NLin2009cAsym_to-T1w_"
"mode-image_xfm.h5"
),
"src": "MNI152NLin2009cAsym",
@ -268,7 +268,7 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
----------
subject : str
The subject ID.
session : {"wave1bas", "wave1pro", "wave1rea"}
session : {"ses-wave1bas", "ses-wave1pro", "ses-wave1rea"}
The session to get.
task : {"Rest", "Axcpt", "Cuedts", "Stern", "Stroop"}
The task to get.
@ -323,25 +323,25 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
"""
subjects = [
"f1031ax",
"f1552xo",
"f1659oa",
"f1670rz",
"f1951tt",
"f3300jh",
"f3720ca",
"f5004cr",
"f5407sl",
"f5416zj",
"f8113do",
"f8570ui",
"f9057kp",
"sub-f1031ax",
"sub-f1552xo",
"sub-f1659oa",
"sub-f1670rz",
"sub-f1951tt",
"sub-f3300jh",
"sub-f3720ca",
"sub-f5004cr",
"sub-f5407sl",
"sub-f5416zj",
"sub-f8113do",
"sub-f8570ui",
"sub-f9057kp",
]
elems = []
# For wave1bas session
for subject, session, task, phase_encoding in product(
subjects,
["wave1bas"],
["ses-wave1bas"],
self.tasks,
self.phase_encodings,
):
@ -350,13 +350,13 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
else:
run = "2"
# Bypass for f1951tt not having run 2 for Rest
if subject == "f1951tt" and task == "Rest" and run == "2":
if subject == "sub-f1951tt" and task == "Rest" and run == "2":
continue
elems.append((subject, session, task, phase_encoding, run))
# For other sessions
for subject, session, task, phase_encoding in product(
subjects,
["wave1pro", "wave1rea"],
["ses-wave1pro", "ses-wave1rea"],
["Rest"],
self.phase_encodings,
):
@ -365,7 +365,7 @@ class DMCC13Benchmark(PatternDataladDataGrabber):
else:
run = "2"
# Bypass for f5416zj for not having wave1rea session
if subject == "f5416zj" and session == "wave1rea":
if subject == "sub-f5416zj" and session == "ses-wave1rea":
continue
elems.append((subject, session, task, phase_encoding, run))

View file

@ -17,34 +17,34 @@ URI = "https://gin.g-node.org/synchon/datalad-example-dmcc13-benchmark"
"sessions, tasks, phase_encodings, runs, native_t1w",
[
(None, None, None, None, False),
("wave1bas", "Rest", "AP", "1", False),
("wave1bas", "Axcpt", "AP", "1", False),
("wave1bas", "Cuedts", "AP", "1", False),
("wave1bas", "Stern", "AP", "1", False),
("wave1bas", "Stroop", "AP", "1", False),
("wave1bas", "Rest", "PA", "2", False),
("wave1bas", "Axcpt", "PA", "2", False),
("wave1bas", "Cuedts", "PA", "2", False),
("wave1bas", "Stern", "PA", "2", False),
("wave1bas", "Stroop", "PA", "2", False),
("wave1bas", "Rest", "AP", "1", True),
("wave1bas", "Axcpt", "AP", "1", True),
("wave1bas", "Cuedts", "AP", "1", True),
("wave1bas", "Stern", "AP", "1", True),
("wave1bas", "Stroop", "AP", "1", True),
("wave1bas", "Rest", "PA", "2", True),
("wave1bas", "Axcpt", "PA", "2", True),
("wave1bas", "Cuedts", "PA", "2", True),
("wave1bas", "Stern", "PA", "2", True),
("wave1bas", "Stroop", "PA", "2", True),
("wave1pro", "Rest", "AP", "1", False),
("wave1pro", "Rest", "PA", "2", False),
("wave1pro", "Rest", "AP", "1", True),
("wave1pro", "Rest", "PA", "2", True),
("wave1rea", "Rest", "AP", "1", False),
("wave1rea", "Rest", "PA", "2", False),
("wave1rea", "Rest", "AP", "1", True),
("wave1rea", "Rest", "PA", "2", True),
("ses-wave1bas", "Rest", "AP", "1", False),
("ses-wave1bas", "Axcpt", "AP", "1", False),
("ses-wave1bas", "Cuedts", "AP", "1", False),
("ses-wave1bas", "Stern", "AP", "1", False),
("ses-wave1bas", "Stroop", "AP", "1", False),
("ses-wave1bas", "Rest", "PA", "2", False),
("ses-wave1bas", "Axcpt", "PA", "2", False),
("ses-wave1bas", "Cuedts", "PA", "2", False),
("ses-wave1bas", "Stern", "PA", "2", False),
("ses-wave1bas", "Stroop", "PA", "2", False),
("ses-wave1bas", "Rest", "AP", "1", True),
("ses-wave1bas", "Axcpt", "AP", "1", True),
("ses-wave1bas", "Cuedts", "AP", "1", True),
("ses-wave1bas", "Stern", "AP", "1", True),
("ses-wave1bas", "Stroop", "AP", "1", True),
("ses-wave1bas", "Rest", "PA", "2", True),
("ses-wave1bas", "Axcpt", "PA", "2", True),
("ses-wave1bas", "Cuedts", "PA", "2", True),
("ses-wave1bas", "Stern", "PA", "2", True),
("ses-wave1bas", "Stroop", "PA", "2", True),
("ses-wave1pro", "Rest", "AP", "1", False),
("ses-wave1pro", "Rest", "PA", "2", False),
("ses-wave1pro", "Rest", "AP", "1", True),
("ses-wave1pro", "Rest", "PA", "2", True),
("ses-wave1rea", "Rest", "AP", "1", False),
("ses-wave1rea", "Rest", "PA", "2", False),
("ses-wave1rea", "Rest", "AP", "1", True),
("ses-wave1rea", "Rest", "PA", "2", True),
],
)
def test_DMCC13Benchmark(
@ -88,7 +88,7 @@ def test_DMCC13Benchmark(
# Get test element's access values
_, ses, task, phase, run = test_element
# Access data
out = dg[("01", ses, task, phase, run)]
out = dg[("sub-01", ses, task, phase, run)]
# Available data types
data_types = [
@ -108,15 +108,15 @@ def test_DMCC13Benchmark(
# Data type file name formats
data_file_names = [
(
f"sub-01_ses-{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
f"sub-01_{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
"space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz"
),
(
f"sub-01_ses-{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
f"sub-01_{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
"desc-confounds_regressors.tsv"
),
(
f"sub-01_ses-{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
f"sub-01_{ses}_task-{task}_acq-mb4{phase}_run-{run}_"
"space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz"
),
"sub-01_space-MNI152NLin2009cAsym_label-CSF_probseg.nii.gz",
@ -199,7 +199,7 @@ def test_DMCC13Benchmark_partial_data_access(
# Get test element's access values
_, ses, task, phase, run = test_element
# Access data
out = dg[("01", ses, task, phase, run)]
out = dg[("sub-01", ses, task, phase, run)]
# Assert data type
if isinstance(types, list):
for type_ in types:

View file

@ -35,7 +35,7 @@ def test_AntsApplyTransformsWarper_preprocess() -> None:
"""Test AntsApplyTransformsWarper preprocess."""
with DMCC13Benchmark(
types=["BOLD", "T1w", "Warp"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
@ -43,7 +43,7 @@ def test_AntsApplyTransformsWarper_preprocess() -> None:
) as dg:
# Read data
element_data = DefaultDataReader().fit_transform(
dg[("f9057kp", "wave1bas", "Rest", "AP", "1")]
dg[("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1")]
)
# Preprocess data
data_type, data = _AntsApplyTransformsWarper(

View file

@ -43,13 +43,13 @@ def test_BOLDWarper_get_output_type() -> None:
[
DMCC13Benchmark(
types=["BOLD", "T1w", "Warp"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=True,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
],
[
DataladHCP1200(
@ -99,25 +99,25 @@ def test_BOLDWarper_preprocess_to_native(
[
DMCC13Benchmark(
types=["BOLD"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=False,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
"MNI152NLin2009aAsym",
],
[
DMCC13Benchmark(
types=["BOLD"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=False,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
"MNI152NLin6Asym",
],
],

View file

@ -70,13 +70,13 @@ def test_SpaceWarper_errors(
[
DMCC13Benchmark(
types=["BOLD", "T1w", "Warp"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=True,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
"ants",
],
[
@ -135,25 +135,25 @@ def test_SpaceWarper_native(
[
DMCC13Benchmark(
types=["T1w"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=False,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
"MNI152NLin2009aAsym",
],
[
DMCC13Benchmark(
types=["T1w"],
sessions=["wave1bas"],
sessions=["ses-wave1bas"],
tasks=["Rest"],
phase_encodings=["AP"],
runs=["1"],
native_t1w=False,
),
("f9057kp", "wave1bas", "Rest", "AP", "1"),
("sub-f9057kp", "ses-wave1bas", "Rest", "AP", "1"),
"MNI152NLin6Asym",
],
],