Giving credit

4.7.1.2. nilearn.signal.high_variance_confounds

nilearn.signal.high_variance_confounds(series, n_confounds=5, percentile=2.0, detrend=True)

Return confounds time series extracted from series with highest variance.

Parameters :

series: numpy.ndarray :

Timeseries. A timeseries is a column in the “series” array. shape (sample number, feature number)

n_confounds: int :

Number of confounds to return

percentile: float :

Highest-variance series percentile to keep before computing the singular value decomposition, 0. <= percentile <= 100. series.shape[0] * percentile / 100 must be greater than n_confounds.

detrend: bool :

If True, detrend timeseries before processing.

Returns :

v: numpy.ndarray :

highest variance confounds. Shape: (samples, n_confounds)

Notes

This method is related to what has been published in the literature as ‘CompCor’ (Behzadi NeuroImage 2007).

The implemented algorithm does the following:

  • compute sum of squares for each time series (no mean removal)
  • keep a given percentile of series with highest variances (percentile)
  • compute an svd of the extracted series
  • return a given number (n_confounds) of series from the svd with highest singular values.