code: def _permute_one_sample_iscs(iscs, group_parameters, i, pairwise=False,
                               summary_statistic='median', group_matrix=None,
                               exact_permutations=None, prng=None):
  
      
  
      # Randomized sign-flips
      if exact_permutations:
          sign_flipper = np.array(exact_permutations[i])
      else:
          sign_flipper = prng.choice([-1, 1],
                                     size=group_parameters['n_subjects'],
                                     replace=True)
  
      # If pairwise, apply sign-flips by rows and columns
      if pairwise:
          matrix_flipped = (group_parameters['group_matrix'] * sign_flipper
                                                             * sign_flipper[
                                                                  :, np.newaxis])
          sign_flipper = squareform(matrix_flipped, checks=False)
  
      # Apply flips along ISC axis (same across voxels)
      isc_flipped = iscs * sign_flipper[:, np.newaxis]
  
      # Get summary statistics on sign-flipped ISCs
      isc_sample = compute_summary_statistic(
                      isc_flipped,
                      summary_statistic=summary_statistic,
                      axis=0)
  
      return isc_sample
docs: Applies one-sample permutations to ISC data
  
      Input ISCs should be n_subjects (leave-one-out approach) or
      n_pairs (pairwise approach) by n_voxels or n_ROIs array.
      This function is only intended to be used internally by the
      permutation_isc function in this module.
  
      Parameters
      ----------
      iscs : ndarray or list
          ISC values
  
      group_parameters : dict
          Dictionary of group parameters
  
      i : int
          Permutation iteration
  
      pairwise : bool, default: False
          Indicator of pairwise or leave-one-out, should match ISCs variable
  
      summary_statistic : str, default: 'median'
          Summary statistic, either 'median' (default) or 'mean'
  
      exact_permutations : list
          List of permutations
  
      prng = None or np.random.RandomState, default: None
          Initial random seed
  
      Returns
      -------
      isc_sample : ndarray
          Array of permuted ISC values