Permutational analysis of variance

Permutational multivariate analysis of variance (PERMANOVA), is a non-parametric multivariate statistical permutation test. PERMANOVA is used to compare groups of objects and test the null hypothesis that the centroids and dispersion of the groups as defined by measure space are equivalent for all groups. A rejection of the null hypothesis means that either the centroid and/or the spread of the objects is different between the groups. Hence the test is based on the prior calculation of the distance between any two objects included in the experiment. PERMANOVA shares some resemblance to ANOVA where they both measure the sum-of-squares within and between group and make use of F test to compare within-group to between-group variance. However, while ANOVA bases the significance of the result on assumption of normality, PERMANOVA draws tests for significance by comparing the actual F test result to that gained from random permutations of the objects between the groups. Moreover, whilst PERMANOVA tests for similarity based on a chosen distance measure, ANOVA tests for similarity of the group averages.

Calculation of the statistic
In the simple case of a single factor with p groups and n objects in each group, the total sum-of-squares is determined as:


 * $$SS_T=\frac 1 N \sum_{i=1}^{N-1} \sum_{j=i+1}^N d^2_{ij}$$

where $$N = p n$$ is the total number of objects, and $$d^2_{ij}$$ is the squared distance between objects i and j.

Similarly, the within groups sum-of-squares is determined as:


 * $$SS_W=\frac 1 n \sum_{i=1}^{N-1} \sum_{j=i+1}^N d^2_{ij}\delta_{ij}$$

where $$ \delta_{ij}$$ is 1 if the observations i and j belong to the same group, and 0 otherwise. Then, the between groups sum-of-squares ($$SS_A$$) can be calculated as the difference between the overall and the within groups sum-of-squares:


 * $$SS_A=SS_T-SS_W$$

Finally, a pseudo F-statistic is calculated:


 * $$F=\frac{\left(\dfrac{SS_A}{p-1}\right)}{\left( \dfrac{SS_W}{N-p}\right)}$$

where p is the number of groups.

Drawing significance
Finally, the PERMANOVA procedure draws significance for the actual F statistic by performing multiple permutations of the data. In each permutation $$\pi$$ the items are shuffled between groups, and the F-ratio is calculated for it, $$F^\pi$$. The P-value is then calculated by:


 * $$ P = \frac{\text{number of permutations with } F^\pi \geq F}{\text{total number of permutations}}$$

Implementation and use
PERMANOVA is widely used in the field of ecology and is implemented in several software packages including the PERMANOVA software, PRIMER and R (programming language) Vegan, lmPerm and python (programming language) skbio packages.