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. 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.
-