nipype.interfaces.utility.base module

# changing to temporary directories >>> tmp = getfixture(‘tmpdir’) >>> old = tmp.chdir()

AssertEqual

Link to code

Bases: BaseInterface

volume1 : a pathlike object or string representing an existing file volume2 : a pathlike object or string representing an existing file

IdentityInterface

Link to code

Bases: IOBase

Basic interface class generates identity mappings

Examples

>>> from nipype.interfaces.utility import IdentityInterface
>>> ii = IdentityInterface(fields=['a', 'b'], mandatory_inputs=False)
>>> ii.inputs.a
<undefined>
>>> ii.inputs.a = 'foo'
>>> out = ii._outputs()
>>> out.a
<undefined>
>>> out = ii.run()
>>> out.outputs.a
'foo'
>>> ii2 = IdentityInterface(fields=['a', 'b'], mandatory_inputs=True)
>>> ii2.inputs.a = 'foo'
>>> out = ii2.run() # doctest: +SKIP
ValueError: IdentityInterface requires a value for input 'b' because it was listed in 'fields' Interface IdentityInterface failed to run.
IdentityInterface.input_spec

alias of nipype.interfaces.base.specs.DynamicTraitedSpec

IdentityInterface.output_spec

alias of nipype.interfaces.base.specs.DynamicTraitedSpec

Merge

Link to code

Bases: IOBase

Basic interface class to merge inputs into a single list

Merge(1) will merge a list of lists

Examples

>>> from nipype.interfaces.utility import Merge
>>> mi = Merge(3)
>>> mi.inputs.in1 = 1
>>> mi.inputs.in2 = [2, 5]
>>> mi.inputs.in3 = 3
>>> out = mi.run()
>>> out.outputs.out
[1, 2, 5, 3]
>>> merge = Merge(1)
>>> merge.inputs.in1 = [1, [2, 5], 3]
>>> out = merge.run()
>>> out.outputs.out
[1, [2, 5], 3]
>>> merge = Merge(1)
>>> merge.inputs.in1 = [1, [2, 5], 3]
>>> merge.inputs.ravel_inputs = True
>>> out = merge.run()
>>> out.outputs.out
[1, 2, 5, 3]
>>> merge = Merge(1)
>>> merge.inputs.in1 = [1, [2, 5], 3]
>>> merge.inputs.no_flatten = True
>>> out = merge.run()
>>> out.outputs.out
[[1, [2, 5], 3]]
axis : ‘vstack’ or ‘hstack’
Direction in which to merge, hstack requires same number of elements in each input. (Nipype default value: vstack)
no_flatten : a boolean
Append to outlist instead of extending in vstack mode. (Nipype default value: False)
ravel_inputs : a boolean
Ravel inputs when no_flatten is False. (Nipype default value: False)
out : a list of items which are any value
Merged output.

Rename

Link to code

Bases: SimpleInterface, IOBase

Change the name of a file based on a mapped format string.

To use additional inputs that will be defined at run-time, the class constructor must be called with the format template, and the fields identified will become inputs to the interface.

Additionally, you may set the parse_string input, which will be run over the input filename with a regular expressions search, and will fill in additional input fields from matched groups. Fields set with inputs have precedence over fields filled in with the regexp match.

Examples

>>> from nipype.interfaces.utility import Rename
>>> rename1 = Rename()
>>> rename1.inputs.in_file = os.path.join(datadir, "zstat1.nii.gz") # datadir is a directory with exemplary files, defined in conftest.py
>>> rename1.inputs.format_string = "Faces-Scenes.nii.gz"
>>> res = rename1.run()          # doctest: +SKIP
>>> res.outputs.out_file         # doctest: +SKIP
'Faces-Scenes.nii.gz"            # doctest: +SKIP
>>> rename2 = Rename(format_string="%(subject_id)s_func_run%(run)02d")
>>> rename2.inputs.in_file = os.path.join(datadir, "functional.nii")
>>> rename2.inputs.keep_ext = True
>>> rename2.inputs.subject_id = "subj_201"
>>> rename2.inputs.run = 2
>>> res = rename2.run()          # doctest: +SKIP
>>> res.outputs.out_file         # doctest: +SKIP
'subj_201_func_run02.nii'        # doctest: +SKIP
>>> rename3 = Rename(format_string="%(subject_id)s_%(seq)s_run%(run)02d.nii")
>>> rename3.inputs.in_file = os.path.join(datadir, "func_epi_1_1.nii")
>>> rename3.inputs.parse_string = r"func_(?P<seq>\w*)_.*"
>>> rename3.inputs.subject_id = "subj_201"
>>> rename3.inputs.run = 2
>>> res = rename3.run()          # doctest: +SKIP
>>> res.outputs.out_file         # doctest: +SKIP
'subj_201_epi_run02.nii'         # doctest: +SKIP
format_string : a unicode string
Python formatting string for output template.
in_file : a pathlike object or string representing an existing file
File to rename.
keep_ext : a boolean
Keep in_file extension, replace non-extension component of name.
parse_string : a unicode string
Python regexp parse string to define replacement inputs.
use_fullpath : a boolean
Use full path as input to regex parser. (Nipype default value: False)
out_file : a pathlike object or string representing an existing file
Softlink to original file with new name.
Rename.input_spec

alias of RenameInputSpec

class nipype.interfaces.utility.base.RenameInputSpec(**kwargs)

Bases: nipype.interfaces.base.specs.DynamicTraitedSpec

Select

Link to code

Bases: IOBase

Basic interface class to select specific elements from a list

Examples

>>> from nipype.interfaces.utility import Select
>>> sl = Select()
>>> _ = sl.inputs.trait_set(inlist=[1, 2, 3, 4, 5], index=[3])
>>> out = sl.run()
>>> out.outputs.out
4
>>> _ = sl.inputs.trait_set(inlist=[1, 2, 3, 4, 5], index=[3, 4])
>>> out = sl.run()
>>> out.outputs.out
[4, 5]
index : a list of items which are an integer (int or long)
0-based indices of values to choose.
inlist : a list of items which are any value
List of values to choose from.
out : a list of items which are any value
List of selected values.

Split

Link to code

Bases: IOBase

Basic interface class to split lists into multiple outputs

Examples

>>> from nipype.interfaces.utility import Split
>>> sp = Split()
>>> _ = sp.inputs.trait_set(inlist=[1, 2, 3], splits=[2, 1])
>>> out = sp.run()
>>> out.outputs.out1
[1, 2]
inlist : a list of items which are any value
List of values to split.
splits : a list of items which are an integer (int or long)
Number of outputs in each split - should add to number of inputs.
squeeze : a boolean
Unfold one-element splits removing the list. (Nipype default value: False)
Split.output_spec

alias of nipype.interfaces.base.specs.DynamicTraitedSpec