ddmra.analysis.highlow_analysis

highlow_analysis(mean_qcs, z_corr_mats, cut=0.5)[source]

Perform high-low QC analysis.

Parameters:
  • mean_qcs (numpy.ndarray of shape (n_subjects,)) – QC measure (typically mean framewise displacement) across participants.

  • z_corr_mats (numpy.ndarray of shape (n_subjects, n_edges)) – Z-transformed correlation coefficients for ROI-ROI pairs. n_edges is the unique ROI-to-ROI edges, not including self-self edges. These coefficients must be sorted according to ascending distance along the second axis.

  • cut (float, optional) – Fraction of runs assigned to each extreme QC group, in (0, 0.5]. The high group is the top cut fraction of runs by QC, and the low group is the bottom cut fraction. cut=0.5 (default) is a median split that uses every run; smaller values (e.g., 0.25 for top vs bottom quartiles) contrast the QC extremes and drop the middle runs, which increases sensitivity to motion effects at the cost of using fewer runs.

Returns:

hl_corr_diff (numpy.ndarray of shape (n_edges,)) – ROI-ROI pair difference scores.

Notes

The basic process for the high-low analysis is:

  1. Average QC values within each participant.

  2. Split the participants into high-QC and low-QC groups using the cut fraction.

  3. Calculate the average z-transformed correlation coefficient for each group.

  4. Subtract the low group’s value from the high group’s value, for each ROI-ROI pair.