single_statistics/testing/
utils.rs

1pub fn extract_unique_groups(group_ids: &[usize]) -> Vec<usize> {
2    let mut unique_groups = group_ids.to_vec();
3    unique_groups.sort();
4    unique_groups.dedup();
5    unique_groups
6}
7
8/// Get indices for each group
9pub fn get_group_indices(group_ids: &[usize], unique_groups: &[usize]) -> (Vec<usize>, Vec<usize>) {
10    let group1 = unique_groups[0];
11    let group2 = unique_groups[1];
12
13    let group1_indices = group_ids.iter()
14        .enumerate()
15        .filter_map(|(i, &g)| if g == group1 { Some(i) } else { None })
16        .collect();
17
18    let group2_indices = group_ids.iter()
19        .enumerate()
20        .filter_map(|(i, &g)| if g == group2 { Some(i) } else { None })
21        .collect();
22
23    (group1_indices, group2_indices)
24}