tedana.selection.component_selector.ComponentSelector.select

ComponentSelector.select()[source]

Apply the decision tree to data.

Using the validated tree in ComponentSelector to run the decision tree functions to calculate cross_component metrics and classify each component as accepted or rejected.

Notes

The selection process uses previously calculated parameters stored in component_table for each ICA component such as Kappa (a T2* weighting metric), Rho (an S0 weighting metric), and variance explained. If a necessary metric is not calculated, this will not run. See tedana.metrics for more detail on the calculated metrics

This can be used on a component_table with no component classifications or to alter classifications on a component_table that was already run (i.e. for manual classificaiton changes after visual inspection)

When this is run, multiple elements in ComponentSelector will change including:

  • component_table: classification column with accepted or rejected labels and classification_tags column with can hold multiple comma-separated labels explaining why a classification happened

  • cross_component_metrics: Any values that were calculated based on the metric values across components or by direct user input

  • component_status_table: Contains the classification statuses at each node in the decision tree

  • used_metrics: A list of metrics used in the selection process

  • nodes: The original tree definition with an added outputs key listing everything that changed in each node

  • current_node_idx: The total number of nodes run in ComponentSelector