Note
Click here to download the full example code or to run this example in your browser via Binder
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/tmpjogdr81i
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:
tmpjogdr81i/
ds000164/
T1w.json
README
task-stroop_bold.json
dataset_description.json
task-stroop_events.json
CHANGES
derivatives/
data/
Schaefer2018_100Parcels_7Networks_order.txt
Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz
fmriprep/
dataset_description.json
sub-001/
func/
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-001_task-stroop_desc-confounds_regressors.tsv
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz
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/tmpjogdr81i/ds000164/derivatives/work -a /tmp/tmpjogdr81i/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz -l /tmp/tmpjogdr81i/ds000164/derivatives/data/Schaefer2018_100Parcels_7Networks_order.tsv /tmp/tmpjogdr81i/ds000164 fmriprep /tmp/tmpjogdr81i/ds000164/derivatives participant
b'200223-05:47:57,245 nipype.utils INFO:\n'
b'\t No new version available.\n'
b'200223-05:47:57,292 nipype.workflow INFO:\n'
b"\t Workflow nibetaseries_participant_wf settings: ['check', 'execution', 'logging', 'monitoring']\n"
b'200223-05:47:57,301 nipype.workflow INFO:\n'
b'\t Running in parallel.\n'
b'200223-05:47:57,304 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/v0.4.3/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/v0.4.3/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'200223-05:47:57,351 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/betaseries_node".\n'
b'200223-05:47:57,355 nipype.workflow INFO:\n'
b'\t [Node] Running "betaseries_node" ("nibetaseries.interfaces.nistats.LSABetaSeries")\n'
b'200223-05:47:59,307 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 1 tasks, and 0 jobs ready. Free memory (GB): 6.81/7.01, Free processors: 3/4.\n'
b' Currently running:\n'
b' * nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node\n'
b'200223-05:48:02,376 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node".\n'
b'200223-05:48:03,310 nipype.workflow INFO:\n'
b'\t [Job 0] Completed (nibetaseries_participant_wf.single_subject001_wf.betaseries_wf.betaseries_node).\n'
b'200223-05:48:03,313 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:05,312 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 6 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:05,346 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file0".\n'
b'200223-05:48:05,347 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file1".\n'
b'200223-05:48:05,347 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file2".\n'
b'200223-05:48:05,351 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:05,351 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:05,351 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:05,353 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes0".\n'
b'200223-05:48:05,355 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes0" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200223-05:48:05,365 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file0".\n'
b'200223-05:48:05,365 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file1".\n'
b'200223-05:48:05,365 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file2".\n'
b'200223-05:48:05,407 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes0".\n'
b'200223-05:48:07,313 nipype.workflow INFO:\n'
b'\t [Job 7] Completed (_ds_betaseries_file0).\n'
b'200223-05:48:07,314 nipype.workflow INFO:\n'
b'\t [Job 8] Completed (_ds_betaseries_file1).\n'
b'200223-05:48:07,314 nipype.workflow INFO:\n'
b'\t [Job 9] Completed (_ds_betaseries_file2).\n'
b'200223-05:48:07,315 nipype.workflow INFO:\n'
b'\t [Job 10] Completed (_censor_volumes0).\n'
b'200223-05:48:07,316 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:07,350 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file".\n'
b'200223-05:48:07,351 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes1".\n'
b'200223-05:48:07,353 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes1" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200223-05:48:07,354 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file0".\n'
b'200223-05:48:07,356 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:07,357 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes2".\n'
b'200223-05:48:07,359 nipype.workflow INFO:\n'
b'\t [Node] Running "_censor_volumes2" ("nibetaseries.interfaces.nilearn.CensorVolumes")\n'
b'200223-05:48:07,364 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file0".\n'
b'200223-05:48:07,365 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file1".\n'
b'200223-05:48:07,367 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:07,374 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file1".\n'
b'200223-05:48:07,375 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_betaseries_file2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_betaseries_file/mapflow/_ds_betaseries_file2".\n'
b'200223-05:48:07,377 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_betaseries_file2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:07,384 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_betaseries_file2".\n'
b'200223-05:48:07,386 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file".\n'
b'200223-05:48:07,408 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes2".\n'
b'200223-05:48:07,408 nipype.workflow INFO:\n'
b'\t [Node] Finished "_censor_volumes1".\n'
b'200223-05:48:09,315 nipype.workflow INFO:\n'
b'\t [Job 1] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_betaseries_file).\n'
b'200223-05:48:09,317 nipype.workflow INFO:\n'
b'\t [Job 11] Completed (_censor_volumes1).\n'
b'200223-05:48:09,317 nipype.workflow INFO:\n'
b'\t [Job 12] Completed (_censor_volumes2).\n'
b'200223-05:48:09,318 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:09,357 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.censor_volumes" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes".\n'
b'200223-05:48:09,361 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes0".\n'
b'200223-05:48:09,363 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes0" - collecting precomputed outputs\n'
b'200223-05:48:09,363 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes0" found cached.\n'
b'200223-05:48:09,364 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes1".\n'
b'200223-05:48:09,365 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes1" - collecting precomputed outputs\n'
b'200223-05:48:09,365 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes1" found cached.\n'
b'200223-05:48:09,366 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_censor_volumes2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/censor_volumes/mapflow/_censor_volumes2".\n'
b'200223-05:48:09,367 nipype.workflow INFO:\n'
b'\t [Node] Cached "_censor_volumes2" - collecting precomputed outputs\n'
b'200223-05:48:09,367 nipype.workflow INFO:\n'
b'\t [Node] "_censor_volumes2" found cached.\n'
b'200223-05:48:09,369 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.censor_volumes".\n'
b'200223-05:48:11,317 nipype.workflow INFO:\n'
b'\t [Job 2] Completed (nibetaseries_participant_wf.single_subject001_wf.censor_volumes).\n'
b'200223-05:48:11,319 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:11,356 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/check_beta_series_list".\n'
b'200223-05:48:11,359 nipype.workflow INFO:\n'
b'\t [Node] Running "check_beta_series_list" ("nipype.interfaces.utility.wrappers.Function")\n'
b'200223-05:48:11,365 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list".\n'
b'200223-05:48:13,319 nipype.workflow INFO:\n'
b'\t [Job 3] Completed (nibetaseries_participant_wf.single_subject001_wf.check_beta_series_list).\n'
b'200223-05:48:13,321 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:15,322 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:15,368 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node0".\n'
b'200223-05:48:15,370 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node1".\n'
b'200223-05:48:15,371 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node0" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200223-05:48:15,372 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node1" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200223-05:48:15,373 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node2".\n'
b'200223-05:48:15,375 nipype.workflow INFO:\n'
b'\t [Node] Running "_atlas_corr_node2" ("nibetaseries.interfaces.nilearn.AtlasConnectivity")\n'
b'200223-05:48:17,324 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 3 tasks, and 0 jobs ready. Free memory (GB): 6.41/7.01, Free processors: 1/4.\n'
b' Currently running:\n'
b' * _atlas_corr_node2\n'
b' * _atlas_corr_node1\n'
b' * _atlas_corr_node0\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpjogdr81i/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/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/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'200223-05:48:22,913 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node0".\n'
b'200223-05:48:23,329 nipype.workflow INFO:\n'
b'\t [Job 13] Completed (_atlas_corr_node0).\n'
b'200223-05:48:23,330 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 2 tasks, and 0 jobs ready. Free memory (GB): 6.61/7.01, Free processors: 2/4.\n'
b' Currently running:\n'
b' * _atlas_corr_node2\n'
b' * _atlas_corr_node1\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpjogdr81i/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/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/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'200223-05:48:23,446 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node2".\n'
b'[NiftiLabelsMasker.fit_transform] loading data from /tmp/tmpjogdr81i/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/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/betaseries_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/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'200223-05:48:23,920 nipype.workflow INFO:\n'
b'\t [Node] Finished "_atlas_corr_node1".\n'
b'200223-05:48:25,331 nipype.workflow INFO:\n'
b'\t [Job 14] Completed (_atlas_corr_node1).\n'
b'200223-05:48:25,331 nipype.workflow INFO:\n'
b'\t [Job 15] Completed (_atlas_corr_node2).\n'
b'200223-05:48:25,333 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:25,367 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node".\n'
b'200223-05:48:25,370 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node0".\n'
b'200223-05:48:25,371 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node0" - collecting precomputed outputs\n'
b'200223-05:48:25,371 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node0" found cached.\n'
b'200223-05:48:25,372 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node1".\n'
b'200223-05:48:25,373 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node1" - collecting precomputed outputs\n'
b'200223-05:48:25,373 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node1" found cached.\n'
b'200223-05:48:25,374 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_atlas_corr_node2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/correlation_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/atlas_corr_node/mapflow/_atlas_corr_node2".\n'
b'200223-05:48:25,375 nipype.workflow INFO:\n'
b'\t [Node] Cached "_atlas_corr_node2" - collecting precomputed outputs\n'
b'200223-05:48:25,375 nipype.workflow INFO:\n'
b'\t [Node] "_atlas_corr_node2" found cached.\n'
b'200223-05:48:25,377 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node".\n'
b'200223-05:48:27,333 nipype.workflow INFO:\n'
b'\t [Job 4] Completed (nibetaseries_participant_wf.single_subject001_wf.correlation_wf.atlas_corr_node).\n'
b'200223-05:48:27,335 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 2 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:29,336 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 6 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:29,373 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig0".\n'
b'200223-05:48:29,374 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig1".\n'
b'200223-05:48:29,375 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig2".\n'
b'200223-05:48:29,375 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:29,376 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:29,376 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix0".\n'
b'200223-05:48:29,378 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:29,385 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:29,386 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix0".\n'
b'200223-05:48:29,387 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig0".\n'
b'200223-05:48:29,387 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig1".\n'
b'200223-05:48:29,395 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig2".\n'
b'200223-05:48:31,337 nipype.workflow INFO:\n'
b'\t [Job 16] Completed (_ds_correlation_fig0).\n'
b'200223-05:48:31,338 nipype.workflow INFO:\n'
b'\t [Job 17] Completed (_ds_correlation_fig1).\n'
b'200223-05:48:31,338 nipype.workflow INFO:\n'
b'\t [Job 18] Completed (_ds_correlation_fig2).\n'
b'200223-05:48:31,339 nipype.workflow INFO:\n'
b'\t [Job 19] Completed (_ds_correlation_matrix0).\n'
b'200223-05:48:31,340 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 3 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:31,377 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig".\n'
b'200223-05:48:31,377 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix1".\n'
b'200223-05:48:31,378 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix2".\n'
b'200223-05:48:31,379 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:31,380 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig0".\n'
b'200223-05:48:31,380 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:31,382 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:31,386 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix1".\n'
b'200223-05:48:31,387 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix2".\n'
b'200223-05:48:31,391 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig0".\n'
b'200223-05:48:31,392 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig1".\n'
b'200223-05:48:31,394 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:31,403 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig1".\n'
b'200223-05:48:31,403 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_fig2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_fig/mapflow/_ds_correlation_fig2".\n'
b'200223-05:48:31,405 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_fig2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:31,414 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_fig2".\n'
b'200223-05:48:31,415 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig".\n'
b'200223-05:48:33,340 nipype.workflow INFO:\n'
b'\t [Job 5] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_correlation_fig).\n'
b'200223-05:48:33,341 nipype.workflow INFO:\n'
b'\t [Job 20] Completed (_ds_correlation_matrix1).\n'
b'200223-05:48:33,341 nipype.workflow INFO:\n'
b'\t [Job 21] Completed (_ds_correlation_matrix2).\n'
b'200223-05:48:33,343 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 1 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b'200223-05:48:33,380 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix".\n'
b'200223-05:48:33,383 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix0" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix0".\n'
b'200223-05:48:33,385 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix0" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:33,391 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix0".\n'
b'200223-05:48:33,392 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix1" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix1".\n'
b'200223-05:48:33,394 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix1" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:33,400 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix1".\n'
b'200223-05:48:33,401 nipype.workflow INFO:\n'
b'\t [Node] Setting-up "_ds_correlation_matrix2" in "/tmp/tmpjogdr81i/ds000164/derivatives/work/NiBetaSeries_work/nibetaseries_participant_wf/single_subject001_wf/130df4f9431c4d57f442c7d8a0b205d2fe524c40/ds_correlation_matrix/mapflow/_ds_correlation_matrix2".\n'
b'200223-05:48:33,402 nipype.workflow INFO:\n'
b'\t [Node] Running "_ds_correlation_matrix2" ("nibetaseries.interfaces.bids.DerivativesDataSink")\n'
b'200223-05:48:33,408 nipype.workflow INFO:\n'
b'\t [Node] Finished "_ds_correlation_matrix2".\n'
b'200223-05:48:33,410 nipype.workflow INFO:\n'
b'\t [Node] Finished "nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix".\n'
b'200223-05:48:35,342 nipype.workflow INFO:\n'
b'\t [Job 6] Completed (nibetaseries_participant_wf.single_subject001_wf.ds_correlation_matrix).\n'
b'200223-05:48:35,344 nipype.workflow INFO:\n'
b'\t [MultiProc] Running 0 tasks, and 0 jobs ready. Free memory (GB): 7.01/7.01, Free processors: 4/4.\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/v0.4.3/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/v0.4.3/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/v0.4.3/lib/python3.7/site-packages/nibetaseries/interfaces/nistats.py:180: DeprecationWarning: The parameter "mask" will be removed in next release of Nistats. Please use the parameter "mask_img" instead.\n'
b' verbose=1\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 3 seconds\n'
b'\n'
b"/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/v0.4.3/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/v0.4.3/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/v0.4.3/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/v0.4.3/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/v0.4.3/lib/python3.7/site-packages/nibetaseries/data/references.bib --filter pandoc-citeproc --metadata pagetitle="NiBetaSeries citation boilerplate" /tmp/tmpjogdr81i/ds000164/derivatives/nibetaseries/logs/CITATION.md -o /tmp/tmpjogdr81i/ds000164/derivatives/nibetaseries/logs/CITATION.html\n'
Observe generated outputs¶
list_files(data_dir)
Out:
tmpjogdr81i/
ds000164/
T1w.json
README
task-stroop_bold.json
dataset_description.json
task-stroop_events.json
CHANGES
derivatives/
nibetaseries/
sub-001/
func/
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_betaseries.nii.gz
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-congruent_correlation.tsv
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_correlation.tsv
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-incongruent_betaseries.nii.gz
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-incongruent_correlation.tsv
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-neutral_correlation.svg
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
logs/
CITATION.tex
CITATION.md
CITATION.bib
data/
Schaefer2018_100Parcels_7Networks_order.tsv
Schaefer2018_100Parcels_7Networks_order.txt
Schaefer2018_100Parcels_7Networks_order_FSLMNI152_2mm.nii.gz
work/
dbcache
NiBetaSeries_work/
nibetaseries_participant_wf/
graph1.json
d3.js
index.html
graph.json
single_subject001_wf/
130df4f9431c4d57f442c7d8a0b205d2fe524c40/
check_beta_series_list/
_node.pklz
_inputs.pklz
result_check_beta_series_list.pklz
_0xd8d183007b90fefdcaaf1ca25fa42fa5.json
_report/
report.rst
censor_volumes/
_node.pklz
_inputs.pklz
result_censor_volumes.pklz
_0x64321c8c86864c20e8cedcf577795b90.json
_report/
report.rst
mapflow/
_censor_volumes1/
result__censor_volumes1.pklz
_node.pklz
_0xaaa2b7a28382e50db9b477397526d5c4.json
_inputs.pklz
_report/
report.rst
_censor_volumes2/
_node.pklz
_inputs.pklz
result__censor_volumes2.pklz
_0x3d8642489475096d389d5670f304f585.json
_report/
report.rst
_censor_volumes0/
_node.pklz
_inputs.pklz
result__censor_volumes0.pklz
_0x70104f9ed79d9594fad31d6a3e250c42.json
_report/
report.rst
ds_correlation_matrix/
_node.pklz
result_ds_correlation_matrix.pklz
_inputs.pklz
_0xcf2c896aa340c3e40372ad4a50e3ab5b.json
_report/
report.rst
mapflow/
_ds_correlation_matrix0/
_node.pklz
result__ds_correlation_matrix0.pklz
_inputs.pklz
_0xa6eaca2632d88009db6ec3a458193346.json
_report/
report.rst
_ds_correlation_matrix1/
_node.pklz
_inputs.pklz
_0x84dda06289f39d3134beecb7a85d4d6a.json
result__ds_correlation_matrix1.pklz
_report/
report.rst
_ds_correlation_matrix2/
_node.pklz
_inputs.pklz
_0x8ce2080187fb52805204e347ad9232cc.json
result__ds_correlation_matrix2.pklz
_report/
report.rst
ds_correlation_fig/
_node.pklz
_0xab8df38e17491e62d6ae8b06a3207737.json
_inputs.pklz
result_ds_correlation_fig.pklz
_report/
report.rst
mapflow/
_ds_correlation_fig0/
_node.pklz
_inputs.pklz
result__ds_correlation_fig0.pklz
_0x32b1a51ca89be3dd2e6edc61a81a6e57.json
_report/
report.rst
_ds_correlation_fig2/
_node.pklz
_inputs.pklz
result__ds_correlation_fig2.pklz
_0x08203360eb4953cf4a0310c7f9313c33.json
_report/
report.rst
_ds_correlation_fig1/
_node.pklz
_inputs.pklz
result__ds_correlation_fig1.pklz
_0xc06bc13b9ddbcc3e41f39a0110c1eb8a.json
_report/
report.rst
ds_betaseries_file/
_node.pklz
_inputs.pklz
_0xa5bd1a62afcf7fcfbe764f684fb29326.json
result_ds_betaseries_file.pklz
_report/
report.rst
mapflow/
_ds_betaseries_file1/
_node.pklz
_inputs.pklz
_0x9781c25557d80145197c8aab3a437d2f.json
result__ds_betaseries_file1.pklz
_report/
report.rst
_ds_betaseries_file0/
_node.pklz
_inputs.pklz
_0xcd7e00a94a79e93b6cb5c2a6255bd6cf.json
result__ds_betaseries_file0.pklz
_report/
report.rst
_ds_betaseries_file2/
_node.pklz
_inputs.pklz
result__ds_betaseries_file2.pklz
_0xeccdbc328399eb63223a902caf1d88a5.json
_report/
report.rst
correlation_wf/
130df4f9431c4d57f442c7d8a0b205d2fe524c40/
atlas_corr_node/
_node.pklz
result_atlas_corr_node.pklz
_inputs.pklz
_0x2bd766b6bf8f1175f593bd87b3826a44.json
_report/
report.rst
mapflow/
_atlas_corr_node2/
_node.pklz
_inputs.pklz
desc-incongruent_correlation.tsv
desc-incongruent_correlation.svg
result__atlas_corr_node2.pklz
_0x003864f753ff3aaa16e400f15a0afee6.json
_report/
report.rst
_atlas_corr_node0/
_node.pklz
_inputs.pklz
desc-neutral_correlation.svg
_0x9386d2496c1b688dc13be4bcd374a969.json
result__atlas_corr_node0.pklz
desc-neutral_correlation.tsv
_report/
report.rst
_atlas_corr_node1/
_node.pklz
_inputs.pklz
desc-congruent_correlation.svg
desc-congruent_correlation.tsv
_0xdf729451a65e1867a4cc5b16be7770c7.json
result__atlas_corr_node1.pklz
_report/
report.rst
betaseries_wf/
130df4f9431c4d57f442c7d8a0b205d2fe524c40/
betaseries_node/
desc-incongruent_betaseries_censored.nii.gz
desc-neutral_betaseries.nii.gz
_node.pklz
_0xd33f5baa7d80a027ebdb7e6d233cca32.json
_inputs.pklz
desc-neutral_betaseries_censored.nii.gz
result_betaseries_node.pklz
desc-congruent_betaseries.nii.gz
desc-incongruent_betaseries.nii.gz
desc-congruent_betaseries_censored.nii.gz
_report/
report.rst
fmriprep/
fMRIPrep.sqlite
dataset_description.json
sub-001/
func/
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-001_task-stroop_desc-confounds_regressors.tsv
sub-001_task-stroop_space-MNI152NLin2009cAsym_desc-brain_mask.nii.gz
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()
Out:
/home/docs/checkouts/readthedocs.org/user_builds/nibetaseries/envs/v0.4.3/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)
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])
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: ( 0 minutes 53.586 seconds)