1. Introduction

Dual permutation (DP) is a method to compute the p-value of an inter-modal spatial Pearson correlation coefficient (PCC) of cross-subject mean maps. For example, the result of an fMRI study and a mean map of serotonin receptor density as measured by PET. Each modality is represented by a "stack" of subjects, ie, a map with multiple frames where each frame is a subject. The mean maps to be correlated are computed from these stacks by fitting a regression model in a GLM, then computing a contrast of regression coefficients to reduce the stack to a single univariate map. Dual permutation works by creating "surrogate" maps of each modality and then computing the correlation between the surrogates. The surrogate maps are constructed by first residualizing the stack using the GLM, then permuting the design matrix, then reanalyzing the resdiualized stack with the permuted design matrix, followed by applying the contrast to create a univariate surrogate. This is repeated many times to create a list of surrogate PCCs. The p-value is then computed at the fraction of times the surrogate PCCs exceeded the real PCC. DP should only be used in cases where the two modalities come from different subject populations. The stacks must exist in the same space, eg, MNI152, fsaverage, or a table of ROIs.

DP has been rigorously verified. The surrogate PCC has been shown analytically to have the same variance of that of the real PCC under the null regardless of spatial autocorrelation function (SACF, including spatial non-staionarity of the SACF), spatial non-stationarity in noise power, and group level design. As a non-parametric method, it does not rely on assumptions about the distribution of the noise. DP has been shown to control the false positive rate (also known as the type I error rate) in pairs of real data configured to be null, including, fMRI, cortical thickness, cortical curvature, DTI fractional anisotropy, and serotonin transporter binding potential as measured by PET. DP works in cases where both modalities are null (known as the "Full Null") as well as when one of the modalities is null but the other is non-null (known as the "Partial Null").

2. Creating "Stacks"

"Stacks" are single files with multiple subjects "stacked" in the frame dimension. A stack must be in an atlas space, such as MNI152, fsaverage, or a table of ROIs. Voxel-wise stacks are usually stored in NIFTI or mgz format whereas ROI stacks are in text files. In FreeSurfer, there are several ways to create stacks, such as with mris_preproc, isxconcat-sess, asegstats2table, aparcstats2table, and mri_concat. Of course, stacks created from other software packages can be used with mri_dualperm.

3. Use Cases

mri_dualperm is the FreeSurfer program that implements DP. It can be run in several ways:

  1. Passing stacks from both modalities
  2. Passing only a single modality stack to create surrogates to be used at a later time
  3. Passing a stack from one modality and the surrogates from another modality created as in method #2
  4. Passing surrogates for both modalities where the surrogates were created as in method #2

It is likely that users will only need method #1. However, allowing the creation of surrogates from a single modality at a time has some advantages, mainly it allows surrogates to be publicly distributed in cases where privacy concerns prevent the distribution of individual subject data in which case methods #3 or #4 could be used. The creation of surrogates from a single modality also makes it easier to perform DP on a broad scale. For example, single modality surrogates could be stored in the BIDS atlas format on OpenNeuro. If surrogates for many such modalities existed, then inter-modal correlations could be computed at a massive scale.

Both modalities (stacks or surrogates) must be in the same space. It is possible to compile DP runs across spaces. For example, if subcortical structures were analyzed in the volume and cortical structures were analyzed on the surface, then a whole brain analysis could be run by running DP on each space separately, then combining the results afterwards.

3.1. Use Case 1: passing stacks from both modalities

mri_dualperm --o outputfolder --nperm 500 --map1 stack1.nii.gz --fsgd1 design1.fsgd --mask1 mask1.nii.gz --map2 stack2.nii.gz --fsgd2 design2.fsgd --mask2 mask2.nii.gz

In the above command, DP will be run with 500 permutations. The FSGD files are FreeSurfer Group Descriptor File used to specify the group level design for a given modality; see surfer.nmr.mgh.harvard.edu/fswiki/FsgdExamples. The modalities do not have to have the same design. The masks are optional binary maps that indicate the voxels over which the correlation will be computed. The final mask will be the intersection of the two masks.

The output will go into outputfolder. The inter-modal correlation will be in the cc.dat file. The p-value will be in p12.max.dat. This file will have three values: (1) p-value for PCC > 0, (2) p-value for PCC < 0, and (3) p-value for PCC != 0. Choose the one appropriate for your hypothesis.

3.2. How to cite

3.3. Example

mri_dualperm