Open
Description
datasource = nio.DataGrabber(infields=['subject_id'],outfields=['anat_t1','anat_t2', 'func_bold', 'func_events'])
datasource.inputs.template_args=dict(anat_t2=[['subject_id', 'subject_id']],func_bold=[['subject_id', 'subject_id', [1, 2, 3]]], func_events=[['subject_id', 'subject_id', [1, 2, 3]]], anat_t1=[['subject_id', 'subject_id']])
datasource.inputs.field_template=dict(anat_t2='sub-%s/anat/sub-%s_inplaneT2.nii.gz', func_bold='sub-%s/func/sub-%s_task-balloonanalogrisktask_run-%.2d_bold.nii.gz', func_events= 'sub-%s/func/sub-%s_task-balloonanalogrisktask_run-%.2d_events.tsv', anat_t1= 'sub-%s/anat/sub-%s_T1w.nii.gz')
yields:
In [14]: grabbed = grabber.run()
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-14-655eeb5e5ee6> in <module>()
----> 1 grabbed = grabber.run()
/home/ghislain/workspace/nipype/nipype/interfaces/base.py in run(self, **inputs)
1042 try:
1043 runtime = self._run_wrapper(runtime)
-> 1044 outputs = self.aggregate_outputs(runtime)
1045 runtime.endTime = dt.isoformat(dt.utcnow())
1046 timediff = parseutc(runtime.endTime) - parseutc(runtime.startTime)
/home/ghislain/workspace/nipype/nipype/interfaces/base.py in aggregate_outputs(self, runtime, needed_outputs)
1113 """ Collate expected outputs and check for existence
1114 """
-> 1115 predicted_outputs = self._list_outputs()
1116 outputs = self._outputs()
1117 if predicted_outputs:
/home/ghislain/workspace/nipype/nipype/interfaces/io.py in _list_outputs(self)
1160 arg = getattr(self.inputs, arg)
1161 if isinstance(arg, list):
-> 1162 argtuple.append(arg[i])
1163 else:
1164 argtuple.append(arg)
IndexError: list index out of range
Interface DataGrabber failed to run.