Running NiBetaSeries

This example runs through a basic call of NiBetaSeries using the commandline entry point nibs. While this example is using python, typically nibs will be called directly on the commandline.

Import all the necessary packages

import tempfile  # make a temporary directory for files
import os  # interact with the filesystem
import urllib.request  # grad data from internet
import tarfile  # extract files from tar
from subprocess import Popen, PIPE, STDOUT  # enable calling commandline

import matplotlib.pyplot as plt  # manipulate figures
import seaborn as sns  # display results
import pandas as pd   # manipulate tabular data
import nibabel as nib  # load the beta maps in python
from nilearn import plotting  # plot nifti images

Download relevant data from ds000164 (and Atlas Files)

The subject data came from openneuro [notebook-1]. The atlas data came from a recently published parcellation in a publically accessible github repository.

# atlas github repo for reference:
"""https://github.com/ThomasYeoLab/CBIG/raw/master/stable_projects/\
brain_parcellation/Schaefer2018_LocalGlobal/Parcellations/MNI/"""
data_dir = tempfile.mkdtemp()
print('Our working directory: {}'.format(data_dir))

# download the tar data
url = "https://www.dropbox.com/s/fvtyld08srwl3x9/ds000164-test_v2.tar.gz?dl=1"
tar_file = os.path.join(data_dir, "ds000164.tar.gz")
u = urllib.request.urlopen(url)
data = u.read()
u.close()

# write tar data to file
with open(tar_file, "wb") as f:
    f.write(data)

# extract the data
tar = tarfile.open(tar_file, mode='r|gz')
tar.extractall(path=data_dir)

os.remove(tar_file)

Out:

Our working directory: /tmp/tmpsadi0but

Display the minimal dataset necessary to run nibs

# https://stackoverflow.com/questions/9727673/list-directory-tree-structure-in-python
def list_files(startpath):
    for root, dirs, files in os.walk(startpath):
        level = root.replace(startpath, '').count(os.sep)
        indent = ' ' * 4 * (level)
        print('{}{}/'.format(indent, os.path.basename(root)))
        subindent = ' ' * 4 * (level + 1)
        for f in files:
            print('{}{}'.format(subindent, f))


list_files(data_dir)

Out:

tmpsadi0but/
    ds000164/
        CHANGES
        dataset_description.json
        T1w.json
        README
        task-stroop_bold.json
        task-stroop_events.json
        derivatives/
            fmriprep/
                dataset_description.json
                sub-001/
                    func/
                        sub-001_task-stroop_desc-confounds_regressors.tsv
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
            data/
                Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz
                Schaefer2018_100Parcels_7Networks_order.txt
        sub-001/
            anat/
                sub-001_T1w.nii.gz
            func/
                sub-001_task-stroop_bold.nii.gz
                sub-001_task-stroop_events.tsv

Manipulate events file so it satifies assumptions

1. the correct column has 1’s and 0’s corresponding to correct and incorrect, respectively. 2. the condition column is renamed to trial_type nibs currently depends on the “correct” column being binary and the “trial_type” column to contain the trial types of interest.

read the file

events_file = os.path.join(data_dir,
                           "ds000164",
                           "sub-001",
                           "func",
                           "sub-001_task-stroop_events.tsv")
events_df = pd.read_csv(events_file, sep='\t', na_values="n/a")
print(events_df.head())

Out:

    onset  duration correct  condition  response_time
0   0.342         1       Y    neutral          1.186
1   3.345         1       Y  congruent          0.667
2  12.346         1       Y  congruent          0.614
3  15.349         1       Y    neutral          0.696
4  18.350         1       Y    neutral          0.752

replace condition with trial_type

events_df.rename({"condition": "trial_type"}, axis='columns', inplace=True)
print(events_df.head())

Out:

    onset  duration correct trial_type  response_time
0   0.342         1       Y    neutral          1.186
1   3.345         1       Y  congruent          0.667
2  12.346         1       Y  congruent          0.614
3  15.349         1       Y    neutral          0.696
4  18.350         1       Y    neutral          0.752

save the file

events_df.to_csv(events_file, sep="\t", na_rep="n/a", index=False)

Manipulate the region order file

There are several adjustments to the atlas file that need to be completed before we can pass it into nibs. Importantly, the relevant column names MUST be named “index” and “regions”. “index” refers to which integer within the file corresponds to which region in the atlas nifti file. “regions” refers the name of each region in the atlas nifti file.

read the atlas file

atlas_txt = os.path.join(data_dir,
                         "ds000164",
                         "derivatives",
                         "data",
                         "Schaefer2018_100Parcels_7Networks_order.txt")
atlas_df = pd.read_csv(atlas_txt, sep="\t", header=None)
print(atlas_df.head())

Out:

   0                   1    2   3    4  5
0  1  7Networks_LH_Vis_1  120  18  131  0
1  2  7Networks_LH_Vis_2  120  18  132  0
2  3  7Networks_LH_Vis_3  120  18  133  0
3  4  7Networks_LH_Vis_4  120  18  135  0
4  5  7Networks_LH_Vis_5  120  18  136  0

drop color coding columns

atlas_df.drop([2, 3, 4, 5], axis='columns', inplace=True)
print(atlas_df.head())

Out:

   0                   1
0  1  7Networks_LH_Vis_1
1  2  7Networks_LH_Vis_2
2  3  7Networks_LH_Vis_3
3  4  7Networks_LH_Vis_4
4  5  7Networks_LH_Vis_5

rename columns with the approved headings: “index” and “regions”

atlas_df.rename({0: 'index', 1: 'regions'}, axis='columns', inplace=True)
print(atlas_df.head())

Out:

   index             regions
0      1  7Networks_LH_Vis_1
1      2  7Networks_LH_Vis_2
2      3  7Networks_LH_Vis_3
3      4  7Networks_LH_Vis_4
4      5  7Networks_LH_Vis_5

remove prefix “7Networks”

atlas_df.replace(regex={'7Networks_(.*)': '\\1'}, inplace=True)
print(atlas_df.head())

Out:

   index   regions
0      1  LH_Vis_1
1      2  LH_Vis_2
2      3  LH_Vis_3
3      4  LH_Vis_4
4      5  LH_Vis_5

write out the file as .tsv

atlas_tsv = atlas_txt.replace(".txt", ".tsv")
atlas_df.to_csv(atlas_tsv, sep="\t", index=False)

Run nibs

This demonstration mimics how you would use nibs on the command line If you only wanted the beta maps and not the correlation matrices, do not include the atlas (-a) and lookup table options (-l)

out_dir = os.path.join(data_dir, "ds000164", "derivatives")
work_dir = os.path.join(out_dir, "work")
atlas_mni_file = os.path.join(data_dir,
                              "ds000164",
                              "derivatives",
                              "data",
                              "Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz")
cmd = """\
nibs -c WhiteMatter CSF \
--participant-label 001 \
--estimator lsa \
--hrf-model glover \
-w {work_dir} \
-a {atlas_mni_file} \
-l {atlas_tsv} \
{bids_dir} \
fmriprep \
{out_dir} \
participant
""".format(atlas_mni_file=atlas_mni_file,
           atlas_tsv=atlas_tsv,
           bids_dir=os.path.join(data_dir, "ds000164"),
           out_dir=out_dir,
           work_dir=work_dir)

# Since we cannot run bash commands inside this tutorial
# we are printing the actual bash command so you can see it
# in the output
print("The Example Command:\n", cmd)

# call nibs
p = Popen(cmd, shell=True, stdout=PIPE, stderr=STDOUT)

while True:
    line = p.stdout.readline()
    if not line:
        break
    print(line)

Out:

The Example Command:
 nibs -c WhiteMatter CSF --participant-label 001 --estimator lsa --hrf-model glover -w /tmp/tmpsadi0but/ds000164/derivatives/work -a /tmp/tmpsadi0but/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz -l /tmp/tmpsadi0but/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order.tsv /tmp/tmpsadi0but/ds000164 fmriprep /tmp/tmpsadi0but/ds000164/derivatives participant

b'200409-23:23:41,408 nipype.utils INFO:\n'
b'\t No new version available.\n'
b'200409-23:23:41,465 nipype.workflow INFO:\n'
b"\t Workflow nibetaseries_participant_wf settings: ['check', 'execution', 'logging', 'monitoring']\n"
b'200409-23:23:41,479 nipype.workflow INFO:\n'
b'\t Running in parallel.\n'
b'200409-23:23:41,481 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/bids/layout/models.py:157: UserWarning: Accessing entities as attributes is deprecated as of 0.7. Please use the .entities dictionary instead (i.e., .entities['task'] instead of .task.\n"
b'  % (attr, attr))\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/bids/layout/models.py:157: UserWarning: Accessing entities as attributes is deprecated as of 0.7. Please use the .entities dictionary instead (i.e., .entities['space'] instead of .space.\n"
b'  % (attr, attr))\n'
b'200409-23:23:41,540 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/betaseries_node".\n'
b'200409-23:23:41,546 nipype.workflow INFO:\n'
b'\t [Node] Running "betaseries_node" ("nibetaseries.interfaces.nistats.LSABetaSeries")\n'
b'200409-23:23:43,484 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 1 tasks, and 0 jobs ready. Free memory (GB): 2.80/3.00, Free processors: 0/1.\n'
b'                     Currently running:\n'
b'                       * nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node\n'
b'200409-23:23:48,833 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node".\n'
b'200409-23:23:49,489 nipype.workflow INFO:\n'
b'\t [Job 0] Completed (nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node).\n'
b'200409-23:23:49,491 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:51,491 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 6 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:51,540 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file0".\n'
b'200409-23:23:51,542 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:51,552 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file0".\n'
b'200409-23:23:53,493 nipype.workflow INFO:\n'
b'\t [Job 7] Completed (_ds_betaseries_file0).\n'
b'200409-23:23:53,494 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 5 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:53,544 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file1".\n'
b'200409-23:23:53,546 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:53,554 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file1".\n'
b'200409-23:23:55,495 nipype.workflow INFO:\n'
b'\t [Job 8] Completed (_ds_betaseries_file1).\n'
b'200409-23:23:55,496 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 4 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:55,548 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file2".\n'
b'200409-23:23:55,550 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:55,558 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file2".\n'
b'200409-23:23:57,497 nipype.workflow INFO:\n'
b'\t [Job 9] Completed (_ds_betaseries_file2).\n'
b'200409-23:23:57,498 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 4 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:57,549 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file".\n'
b'200409-23:23:57,552 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file0".\n'
b'200409-23:23:57,555 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:57,563 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file0".\n'
b'200409-23:23:57,564 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file1".\n'
b'200409-23:23:57,566 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:57,573 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file1".\n'
b'200409-23:23:57,574 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_betaseries_file/mapflow/_ds_betaseries_file2".\n'
b'200409-23:23:57,576 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:23:57,584 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file2".\n'
b'200409-23:23:57,586 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file".\n'
b'200409-23:23:59,499 nipype.workflow INFO:\n'
b'\t [Job 1] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file).\n'
b'200409-23:23:59,501 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:23:59,552 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes0".\n'
b'200409-23:23:59,554 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes0" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200409-23:23:59,614 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes0".\n'
b'200409-23:24:01,501 nipype.workflow INFO:\n'
b'\t [Job 10] Completed (_censor_volumes0).\n'
b'200409-23:24:01,503 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:01,554 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes1".\n'
b'200409-23:24:01,556 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes1" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200409-23:24:01,616 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes1".\n'
b'200409-23:24:03,503 nipype.workflow INFO:\n'
b'\t [Job 11] Completed (_censor_volumes1).\n'
b'200409-23:24:03,505 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:03,557 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes2".\n'
b'200409-23:24:03,559 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes2" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200409-23:24:03,611 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes2".\n'
b'200409-23:24:05,506 nipype.workflow INFO:\n'
b'\t [Job 12] Completed (_censor_volumes2).\n'
b'200409-23:24:05,508 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:05,557 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.censor_volumes" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes".\n'
b'200409-23:24:05,561 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes0".\n'
b'200409-23:24:05,562 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes0" - collecting precomputed outputs\n'
b'200409-23:24:05,563 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes0" found cached.\n'
b'200409-23:24:05,564 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes1".\n'
b'200409-23:24:05,565 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes1" - collecting precomputed outputs\n'
b'200409-23:24:05,565 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes1" found cached.\n'
b'200409-23:24:05,566 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/censor_volumes/mapflow/_censor_volumes2".\n'
b'200409-23:24:05,567 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes2" - collecting precomputed outputs\n'
b'200409-23:24:05,567 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes2" found cached.\n'
b'200409-23:24:05,568 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.censor_volumes".\n'
b'200409-23:24:07,507 nipype.workflow INFO:\n'
b'\t [Job 2] Completed (nibetaseries_participant_wf.single_subject001_wf.censor_volumes).\n'
b'200409-23:24:07,509 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:07,562 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/check_beta_series_list".\n'
b'200409-23:24:07,566 nipype.workflow INFO:\n'
b'\t [Node] Running "check_beta_series_list" ("nipype.interfaces.utility.wrappers.Function")\n'
b'200409-23:24:07,572 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list".\n'
b'200409-23:24:09,509 nipype.workflow INFO:\n'
b'\t [Job 3] Completed (nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list).\n'
b'200409-23:24:09,511 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:11,512 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:11,565 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node0".\n'
b'200409-23:24:11,567 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node0" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200409-23:24:13,513 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 1 tasks, and 2 jobs ready. Free memory (GB): 2.80/3.00, Free processors: 0/1.\n'
b'                     Currently running:\n'
b'                       * _atlas_corr_node0\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpsadi0but/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz\n'
b'Resampling labels\n'
b'[NiftiLabelsMasker.transform_single_imgs] Loading data from /tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/betaseries_node/desc-neutral_betase\n'
b'[NiftiLabelsMasker.transform_single_imgs] Extracting region signals\n'
b'[NiftiLabelsMasker.transform_single_imgs] Cleaning extracted signals\n'
b'200409-23:24:17,806 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node0".\n'
b'200409-23:24:19,518 nipype.workflow INFO:\n'
b'\t [Job 13] Completed (_atlas_corr_node0).\n'
b'200409-23:24:19,520 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:19,569 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node1".\n'
b'200409-23:24:19,571 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node1" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200409-23:24:21,521 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 1 tasks, and 1 jobs ready. Free memory (GB): 2.80/3.00, Free processors: 0/1.\n'
b'                     Currently running:\n'
b'                       * _atlas_corr_node1\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpsadi0but/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz\n'
b'Resampling labels\n'
b'[NiftiLabelsMasker.transform_single_imgs] Loading data from /tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/betaseries_node/desc-congruent_beta\n'
b'[NiftiLabelsMasker.transform_single_imgs] Extracting region signals\n'
b'[NiftiLabelsMasker.transform_single_imgs] Cleaning extracted signals\n'
b'200409-23:24:26,239 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node1".\n'
b'200409-23:24:27,526 nipype.workflow INFO:\n'
b'\t [Job 14] Completed (_atlas_corr_node1).\n'
b'200409-23:24:27,528 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:27,581 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node2".\n'
b'200409-23:24:27,583 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node2" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200409-23:24:29,529 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 1 tasks, and 0 jobs ready. Free memory (GB): 2.80/3.00, Free processors: 0/1.\n'
b'                     Currently running:\n'
b'                       * _atlas_corr_node2\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpsadi0but/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz\n'
b'Resampling labels\n'
b'[NiftiLabelsMasker.transform_single_imgs] Loading data from /tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/betaseries_node/desc-incongruent_be\n'
b'[NiftiLabelsMasker.transform_single_imgs] Extracting region signals\n'
b'[NiftiLabelsMasker.transform_single_imgs] Cleaning extracted signals\n'
b'200409-23:24:33,874 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node2".\n'
b'200409-23:24:35,534 nipype.workflow INFO:\n'
b'\t [Job 15] Completed (_atlas_corr_node2).\n'
b'200409-23:24:35,536 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:35,589 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node".\n'
b'200409-23:24:35,593 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node0".\n'
b'200409-23:24:35,594 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node0" - collecting precomputed outputs\n'
b'200409-23:24:35,595 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node0" found cached.\n'
b'200409-23:24:35,596 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node1".\n'
b'200409-23:24:35,597 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node1" - collecting precomputed outputs\n'
b'200409-23:24:35,597 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node1" found cached.\n'
b'200409-23:24:35,598 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/atlas_corr_node/mapflow/_atlas_corr_node2".\n'
b'200409-23:24:35,599 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node2" - collecting precomputed outputs\n'
b'200409-23:24:35,599 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node2" found cached.\n'
b'200409-23:24:35,601 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node".\n'
b'200409-23:24:37,536 nipype.workflow INFO:\n'
b'\t [Job 4] Completed (nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node).\n'
b'200409-23:24:37,539 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:39,539 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 6 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:39,592 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig0".\n'
b'200409-23:24:39,594 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:39,604 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig0".\n'
b'200409-23:24:41,541 nipype.workflow INFO:\n'
b'\t [Job 16] Completed (_ds_correlation_fig0).\n'
b'200409-23:24:41,543 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 5 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:41,598 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig1".\n'
b'200409-23:24:41,600 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:41,610 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig1".\n'
b'200409-23:24:43,543 nipype.workflow INFO:\n'
b'\t [Job 17] Completed (_ds_correlation_fig1).\n'
b'200409-23:24:43,544 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 4 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:43,593 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig2".\n'
b'200409-23:24:43,595 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:43,605 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig2".\n'
b'200409-23:24:45,545 nipype.workflow INFO:\n'
b'\t [Job 18] Completed (_ds_correlation_fig2).\n'
b'200409-23:24:45,547 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 4 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:45,599 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig".\n'
b'200409-23:24:45,603 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig0".\n'
b'200409-23:24:45,605 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:45,615 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig0".\n'
b'200409-23:24:45,616 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig1".\n'
b'200409-23:24:45,618 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:45,627 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig1".\n'
b'200409-23:24:45,631 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_fig/mapflow/_ds_correlation_fig2".\n'
b'200409-23:24:45,633 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:45,642 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig2".\n'
b'200409-23:24:45,644 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig".\n'
b'200409-23:24:47,547 nipype.workflow INFO:\n'
b'\t [Job 5] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig).\n'
b'200409-23:24:47,549 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:47,598 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix0".\n'
b'200409-23:24:47,601 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:47,608 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix0".\n'
b'200409-23:24:49,548 nipype.workflow INFO:\n'
b'\t [Job 19] Completed (_ds_correlation_matrix0).\n'
b'200409-23:24:49,550 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:49,604 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix1".\n'
b'200409-23:24:49,606 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:49,614 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix1".\n'
b'200409-23:24:51,551 nipype.workflow INFO:\n'
b'\t [Job 20] Completed (_ds_correlation_matrix1).\n'
b'200409-23:24:51,554 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:51,607 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix2".\n'
b'200409-23:24:51,609 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:51,617 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix2".\n'
b'200409-23:24:53,553 nipype.workflow INFO:\n'
b'\t [Job 21] Completed (_ds_correlation_matrix2).\n'
b'200409-23:24:53,555 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'200409-23:24:53,606 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix".\n'
b'200409-23:24:53,610 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix0" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix0".\n'
b'200409-23:24:53,613 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:53,620 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix0".\n'
b'200409-23:24:53,621 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix1" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix1".\n'
b'200409-23:24:53,623 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:53,630 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix1".\n'
b'200409-23:24:53,631 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix2" in "/tmp/tmpsadi0but/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/cd1a2e0501620f3eda543a0897f321db9c451d2d/ds_correlation_matrix/mapflow/_ds_correlation_matrix2".\n'
b'200409-23:24:53,633 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200409-23:24:53,640 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix2".\n'
b'200409-23:24:53,641 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix".\n'
b'200409-23:24:55,555 nipype.workflow INFO:\n'
b'\t [Job 6] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix).\n'
b'200409-23:24:55,557 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 0 jobs ready. Free memory (GB): 3.00/3.00, Free processors: 1/1.\n'
b'/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nibetaseries/interfaces/nistats.py:216: DeprecationWarning: The parameter "mask" will be removed in next release of Nistats. Please use the parameter "mask_img" instead.\n'
b'  minimize_memory=False,\n'
b'Computing run 1 out of 1 runs (go take a coffee, a big one)\n'
b'\n'
b'Computation of 1 runs done in 5 seconds\n'
b'\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nistats/regression.py:339: FutureWarning: 'resid' from RegressionResults has been deprecated and will be removed. Please use 'residuals' instead.\n"
b'  FutureWarning,\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/sklearn/feature_extraction/text.py:17: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working\n"
b'  from collections import Mapping, defaultdict\n'
b'/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nibetaseries/interfaces/nilearn.py:130: RuntimeWarning: invalid value encountered in greater\n'
b'  n_lines = int(np.sum(connmat > 0) / 2)\n'
b'/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nibetaseries/interfaces/nilearn.py:130: RuntimeWarning: invalid value encountered in greater\n'
b'  n_lines = int(np.sum(connmat > 0) / 2)\n'
b'/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nibetaseries/interfaces/nilearn.py:130: RuntimeWarning: invalid value encountered in greater\n'
b'  n_lines = int(np.sum(connmat > 0) / 2)\n'
b'pandoc: Error running filter pandoc-citeproc:\n'
b"Could not find executable 'pandoc-citeproc'.\n"
b'Could not generate CITATION.html file:\n'
b'pandoc -s --bibliography /home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/nibetaseries/data/references.bib --filter pandoc-citeproc --metadata pagetitle="NiBetaSeries citation boilerplate" /tmp/tmpsadi0but/ds000164/derivatives/nibetaseries/logs/CITATION.md -o /tmp/tmpsadi0but/ds000164/derivatives/nibetaseries/logs/CITATION.html\n'

Observe generated outputs

list_files(data_dir)

Out:

tmpsadi0but/
    ds000164/
        CHANGES
        dataset_description.json
        T1w.json
        README
        task-stroop_bold.json
        task-stroop_events.json
        derivatives/
            work/
                dbcache
                NiBetaSeries_work/
                    nibetaseries_participant_wf/
                        graph1.json
                        graph.json
                        d3.js
                        index.html
                        single_subject001_wf/
                            cd1a2e0501620f3eda543a0897f321db9c451d2d/
                                censor_volumes/
                                    _inputs.pklz
                                    _0x3c0bd4a3c0cf7d9314c357e2305d8fdb.json
                                    result_censor_volumes.pklz
                                    _node.pklz
                                    _report/
                                        report.rst
                                    mapflow/
                                        _censor_volumes1/
                                            _inputs.pklz
                                            _0xe2bfd515cbf07d16bccf2b5784644ad8.json
                                            result__censor_volumes1.pklz
                                            _node.pklz
                                            _report/
                                                report.rst
                                        _censor_volumes0/
                                            _inputs.pklz
                                            result__censor_volumes0.pklz
                                            _node.pklz
                                            _0x8189ce0fa2799fe3b8b8871c3ff27ed0.json
                                            _report/
                                                report.rst
                                        _censor_volumes2/
                                            _inputs.pklz
                                            _0x6ad99c4ddc3109ad96a61013cd2ac847.json
                                            result__censor_volumes2.pklz
                                            _node.pklz
                                            _report/
                                                report.rst
                                check_beta_series_list/
                                    _inputs.pklz
                                    result_check_beta_series_list.pklz
                                    _node.pklz
                                    _0xe2082206a2f479d2d8d281e9d103ae6e.json
                                    _report/
                                        report.rst
                                ds_betaseries_file/
                                    _inputs.pklz
                                    result_ds_betaseries_file.pklz
                                    _0xa01ab93f524a5cde0e19955bce8befd8.json
                                    _node.pklz
                                    _report/
                                        report.rst
                                    mapflow/
                                        _ds_betaseries_file0/
                                            result__ds_betaseries_file0.pklz
                                            _inputs.pklz
                                            _0xbd7595bb02146e193c7c3a5eb3a8625d.json
                                            _node.pklz
                                            _report/
                                                report.rst
                                        _ds_betaseries_file1/
                                            _0xeb3b7bc6305f5ee2c7682b5fbbc730dd.json
                                            _inputs.pklz
                                            _node.pklz
                                            result__ds_betaseries_file1.pklz
                                            _report/
                                                report.rst
                                        _ds_betaseries_file2/
                                            _0xa337f3529c635dfda1241bf22c891ff8.json
                                            _inputs.pklz
                                            result__ds_betaseries_file2.pklz
                                            _node.pklz
                                            _report/
                                                report.rst
                                ds_correlation_matrix/
                                    _inputs.pklz
                                    _0xd457ae67c77c3e9c8260d645de1f7122.json
                                    _node.pklz
                                    result_ds_correlation_matrix.pklz
                                    _report/
                                        report.rst
                                    mapflow/
                                        _ds_correlation_matrix1/
                                            _inputs.pklz
                                            _0x835bc5820395a62effcac4f6646bdda5.json
                                            _node.pklz
                                            result__ds_correlation_matrix1.pklz
                                            _report/
                                                report.rst
                                        _ds_correlation_matrix2/
                                            _inputs.pklz
                                            result__ds_correlation_matrix2.pklz
                                            _0xd09c22e13a4485505e42ca8d0983e0e0.json
                                            _node.pklz
                                            _report/
                                                report.rst
                                        _ds_correlation_matrix0/
                                            _inputs.pklz
                                            _0xc396d48caf4d365f5faf87ed9b25acd2.json
                                            result__ds_correlation_matrix0.pklz
                                            _node.pklz
                                            _report/
                                                report.rst
                                ds_correlation_fig/
                                    _inputs.pklz
                                    _0x9312d5d2dd88bdb500512f841dd79610.json
                                    _node.pklz
                                    result_ds_correlation_fig.pklz
                                    _report/
                                        report.rst
                                    mapflow/
                                        _ds_correlation_fig2/
                                            _inputs.pklz
                                            _0xb6cc68b76502f468db6c78037d01dabe.json
                                            _node.pklz
                                            result__ds_correlation_fig2.pklz
                                            _report/
                                                report.rst
                                        _ds_correlation_fig0/
                                            _inputs.pklz
                                            result__ds_correlation_fig0.pklz
                                            _node.pklz
                                            _0x24530db5945f3594d36f92d10af22935.json
                                            _report/
                                                report.rst
                                        _ds_correlation_fig1/
                                            _inputs.pklz
                                            _0xb5c663a320b6474b41624364ba39350c.json
                                            result__ds_correlation_fig1.pklz
                                            _node.pklz
                                            _report/
                                                report.rst
                            correlation_wf/
                                cd1a2e0501620f3eda543a0897f321db9c451d2d/
                                    atlas_corr_node/
                                        _inputs.pklz
                                        result_atlas_corr_node.pklz
                                        _node.pklz
                                        _0x10ba02cf3df53b2b2d131c7848a64e09.json
                                        _report/
                                            report.rst
                                        mapflow/
                                            _atlas_corr_node0/
                                                _0x6fcbb2c3c0591de5ca5614e65a4bd0c0.json
                                                _inputs.pklz
                                                result__atlas_corr_node0.pklz
                                                desc-neutral_correlation.svg
                                                _node.pklz
                                                desc-neutral_correlation.tsv
                                                _report/
                                                    report.rst
                                            _atlas_corr_node1/
                                                _0x5f232e98184de3aecf4620a204ed7ed8.json
                                                _inputs.pklz
                                                desc-congruent_correlation.tsv
                                                result__atlas_corr_node1.pklz
                                                desc-congruent_correlation.svg
                                                _node.pklz
                                                _report/
                                                    report.rst
                                            _atlas_corr_node2/
                                                _inputs.pklz
                                                _0x9a3824b568ea2f7c9bb1e3452e4a6fa5.json
                                                _node.pklz
                                                desc-incongruent_correlation.tsv
                                                result__atlas_corr_node2.pklz
                                                desc-incongruent_correlation.svg
                                                _report/
                                                    report.rst
                            betaseries_wf/
                                cd1a2e0501620f3eda543a0897f321db9c451d2d/
                                    betaseries_node/
                                        desc-congruent_betaseries.nii.gz
                                        _inputs.pklz
                                        desc-residuals_bold.nii.gz
                                        desc-congruent_betaseries_censored.nii.gz
                                        _node.pklz
                                        desc-incongruent_betaseries_censored.nii.gz
                                        _0xec158b6497034cd379ffed26b3af92fb.json
                                        desc-neutral_betaseries.nii.gz
                                        desc-neutral_betaseries_censored.nii.gz
                                        desc-incongruent_betaseries.nii.gz
                                        result_betaseries_node.pklz
                                        _report/
                                            report.rst
            nibetaseries/
                logs/
                    CITATION.md
                    CITATION.bib
                    CITATION.tex
                sub-001/
                    func/
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-congruent_correlation.tsv
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-congruent_betaseries.nii.gz
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-congruent_correlation.svg
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-incongruent_correlation.svg
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-incongruent_betaseries.nii.gz
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_correlation.svg
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-incongruent_correlation.tsv
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_correlation.tsv
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_betaseries.nii.gz
            fmriprep/
                fMRIPrep.sqlite
                dataset_description.json
                sub-001/
                    func/
                        sub-001_task-stroop_desc-confounds_regressors.tsv
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz
                        sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
            data/
                Schaefer2018_100Parcels_7Networks_order.tsv
                Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz
                Schaefer2018_100Parcels_7Networks_order.txt
        sub-001/
            anat/
                sub-001_T1w.nii.gz
            func/
                sub-001_task-stroop_bold.nii.gz
                sub-001_task-stroop_events.tsv

Collect correlation results

output_path = os.path.join(out_dir, "nibetaseries", "sub-001", "func")
trial_types = ['congruent', 'incongruent', 'neutral']
filename_template = ('sub-001_task-stroop_space-MNI152NLin2009cAsym_'
                     'desc-{trial_type}_{suffix}.{ext}')

pd_dict = {}
for trial_type in trial_types:
    fname = filename_template.format(trial_type=trial_type, suffix='correlation', ext='tsv')
    file_path = os.path.join(output_path, fname)
    pd_dict[trial_type] = pd.read_csv(file_path, sep='\t', na_values="n/a", index_col=0)
# display example matrix
print(pd_dict[trial_type].head())

Out:

          LH_Vis_1  LH_Vis_2  ...  RH_Default_PCC_1  RH_Default_PCC_2
LH_Vis_1       NaN  0.218441  ...         -0.229994          0.030440
LH_Vis_2  0.218441       NaN  ...         -0.272071          0.051983
LH_Vis_3 -0.193264  0.448418  ...          0.087879          0.083368
LH_Vis_4  0.122960  0.526585  ...         -0.185481          0.188477
LH_Vis_5  0.284347  0.534536  ...         -0.393536         -0.288098

[5 rows x 100 columns]

Graph the correlation results

fig, axes = plt.subplots(nrows=3, ncols=1, sharex=True, sharey=True, figsize=(10, 30),
                         gridspec_kw={'wspace': 0.025, 'hspace': 0.075})

cbar_ax = fig.add_axes([.91, .3, .03, .4])
r = 0
for trial_type, df in pd_dict.items():
    g = sns.heatmap(df, ax=axes[r], vmin=-.5, vmax=1., square=True,
                    cbar=True, cbar_ax=cbar_ax)
    axes[r].set_title(trial_type)
    # iterate over rows
    r += 1
plt.tight_layout()
../_images/sphx_glr_plot_run_nibetaseries_001.png

Out:

/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/stable/lib/python3.7/site-packages/matplotlib/figure.py:2299: UserWarning: This figure includes Axes that are not compatible with tight_layout, so results might be incorrect.
  warnings.warn("This figure includes Axes that are not compatible "

Collect beta map results

nii_dict = {}
for trial_type in trial_types:
    fname = filename_template.format(trial_type=trial_type, suffix='betaseries', ext='nii.gz')
    file_path = os.path.join(output_path, fname)
    nii_dict[trial_type] = nib.load(file_path)

# view incongruent beta_maps
nib.viewers.OrthoSlicer3D(nii_dict['incongruent'].get_fdata(),
                          title="Incongruent Betas").set_position(10, 13, 10)
../_images/sphx_glr_plot_run_nibetaseries_002.png

Graph beta map standard deviation

We can find where the betas have the highest standard deviation for each trial type. Unsuprisingly, the largest deviations are near the edge of the brain mask and the subcortical regions.

# standard deviations for each trial type
std_dict = {tt: nib.Nifti1Image(img.get_fdata().std(axis=-1), img.affine, img.header)
            for tt, img in nii_dict.items()}

fig, axes = plt.subplots(nrows=3, ncols=1, figsize=(10, 20))

for idx, (trial_type, nii) in enumerate(std_dict.items()):
    plotting.plot_stat_map(nii, title=trial_type, cut_coords=(0, 0, 0),
                           threshold=5, vmax=20, axes=axes[idx])
../_images/sphx_glr_plot_run_nibetaseries_003.png

References

notebook-1

Timothy D Verstynen. The organization and dynamics of corticostriatal pathways link the medial orbitofrontal cortex to future behavioral responses. Journal of Neurophysiology, 112(10):2457–2469, 2014. URL: https://doi.org/10.1152/jn.00221.2014, doi:10.1152/jn.00221.2014.

Total running time of the script: ( 1 minutes 28.003 seconds)

Gallery generated by Sphinx-Gallery