bids.variables.entities.NodeIndex

class NodeIndex[source]

Represents the top level in a BIDS hierarchy.

Methods

add_variable(variable) Adds a BIDSVariable to the current Node’s list.
create_node(level, entities, *args, **kwargs) Creates a new child Node.
get_collections(unit[, names, merge, …]) Retrieve variable data for a specified level in the Dataset.
get_nodes([level, entities, strict]) Retrieves all nodes that match the specified criteria.
get_or_create_node(level, entities, *args, …) Retrieves a child Node based on the specified criteria, creating a new Node if necessary.
__init__()[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__() Initialize self.
add_variable(variable) Adds a BIDSVariable to the current Node’s list.
create_node(level, entities, *args, **kwargs) Creates a new child Node.
get_collections(unit[, names, merge, …]) Retrieve variable data for a specified level in the Dataset.
get_nodes([level, entities, strict]) Retrieves all nodes that match the specified criteria.
get_or_create_node(level, entities, *args, …) Retrieves a child Node based on the specified criteria, creating a new Node if necessary.
add_variable(variable)

Adds a BIDSVariable to the current Node’s list.

Parameters:variable (BIDSVariable) – The Variable to add to the list.
create_node(level, entities, *args, **kwargs)[source]

Creates a new child Node.

Parameters:
  • level (str) – The level of analysis of the new Node.
  • entities (dict) – Dictionary of entities belonging to Node
  • kwargs (args,) – Optional positional or named arguments to pass onto class-specific initializers. These arguments are only used if a Node that matches the passed entities doesn’t already exist, and a new one must be created.
Returns:

A Node instance.

get_collections(unit, names=None, merge=False, sampling_rate=None, **entities)[source]

Retrieve variable data for a specified level in the Dataset.

Parameters:
  • unit (str) – The unit of analysis to return variables for. Must be one of ‘run’, ‘session’, ‘subject’, or ‘dataset’.
  • names (list) – Optional list of variables names to return. If None, all available variables are returned.
  • merge (bool) – If True, variables are merged across all observations of the current unit. E.g., if unit=’subject’ and return_type= ‘collection’, variablesfrom all subjects will be merged into a single collection. If False, each observation is handled separately, and the result is returned as a list.
  • sampling_rate (int, str) – If unit=’run’, the sampling rate to pass onto the returned BIDSRunVariableCollection.
  • entities – Optional constraints used to limit what gets returned.
Returns:

A list of BIDSVariableCollections if merge=False; a single BIDSVariableCollection if merge=True.

get_nodes(level=None, entities=None, strict=False)[source]

Retrieves all nodes that match the specified criteria.

Parameters:
  • level (str) – The level of analysis of nodes to return.
  • entities (dict) – Entities to filter on. All nodes must have matching values on all defined keys to be included.
  • strict (bool) – If True, an exception will be raised if the entities dict contains any keys that aren’t contained in the current index.
Returns:

A list of Node instances.

get_or_create_node(level, entities, *args, **kwargs)[source]

Retrieves a child Node based on the specified criteria, creating a new Node if necessary.

Parameters:
  • level (str) – The level of analysis of the Node.
  • entities (dict) – Dictionary of entities to include in newly-created Nodes or filter existing ones.
  • kwargs (args,) – Optional positional or named arguments to pass onto class-specific initializers. These arguments are only used if a Node that matches the passed entities doesn’t already exist, and a new one must be created.
Returns:

A Node instance.