kundu_selection_v2(comptable, n_echos, n_vols)[source]

Classify components as “accepted”, “rejected”, or “ignored” based on relevant metrics.

The selection process uses previously calculated parameters listed in comptable for each ICA component such as Kappa (a T2* weighting metric), Rho (an S0 weighting metric), and variance explained. See Notes for additional calculated metrics used to classify each component into one of the listed groups.

  • comptable ((C x M) pandas.DataFrame) – Component metric table. One row for each component, with a column for each metric. The index should be the component number.

  • n_echos (int) – Number of echos in original data

  • n_vols (int) – Number of volumes in dataset


  • comptable (pandas.DataFrame) – Updated component table with additional metrics and with classification (accepted, rejected, or ignored)

  • metric_metadata (dict) – Dictionary with metadata about calculated metrics. Each entry corresponds to a column in comptable.


The selection algorithm used in this function was originated in ME-ICA by Prantik Kundu, and his original implementation is available at: https://github.com/ME-ICA/me-ica/blob/b2781dd087ab9de99a2ec3925f04f02ce84f0adc/meica.libs/select_model.py

This component selection process uses multiple, previously calculated metrics that include kappa, rho, variance explained, noise and spatial frequency metrics, and measures of spatial overlap across metrics.

Prantik began to update these selection criteria to use SVMs to distinguish components, a hypercommented version of this attempt is available at: https://gist.github.com/emdupre/ca92d52d345d08ee85e104093b81482e


  • Kundu, P., Brenowitz, N. D., Voon, V., Worbe, Y., Vértes, P. E., Inati, S. J., … & Bullmore, E. T. (2013). Integrated strategy for improving functional connectivity mapping using multiecho fMRI. Proceedings of the National Academy of Sciences, 110(40), 16187-16192.