I have 2 3-D arrays (i.e. NIfTI files):

- contains scores for how much stimulus-evoked activity in each voxel is influenced by a pharmacological treatment
- contains scores for how much each voxel is populated by a certain receptor class

I would like to compute a p-value for the null hypothesis that the receptor class distribution does not predict the impact of the pharmacological treatment on stimulus-evoked activity.

I can obtain a similarity metric for the two images (e.g. via ANTs). I assume for the case at hand, global correlation testing 100% of values might be appropriate.

That would give me an “absolute” score for how well the values in one array match those in the other. Sadly, this is also influenced by such details as dynamic range, etc. Not least of all, a simple similarity metric from ANTs comes with no confidence interval.

Ideally I would like to know how well this specific arrangement of the specific values from one array, matches the other array. I am thinking this could be done by permuting all the values of one array, computing similarity scores for each permutation, and counting how many perform better vs worse than the actual permutation. Could certainly be done, but it’s quite a bit of work, and as it stands would take forever to execute.

Is there any already-existent library which can calculate a similarity metric between 2 3-D arrays - and give a confidence interval?