mantel.RdFunction mantel  finds the Mantel statistic as a matrix
  correlation between two dissimilarity matrices, and function
  mantel.partial finds the partial Mantel statistic as the
  partial matrix correlation between three dissimilarity matrices.  The
  significance of the statistic is evaluated by permuting rows and
  columns of the first dissimilarity matrix.
mantel(xdis, ydis, method="pearson", permutations=999, strata = NULL, na.rm = FALSE, parallel = getOption("mc.cores")) mantel.partial(xdis, ydis, zdis, method = "pearson", permutations = 999, strata = NULL, na.rm = FALSE, parallel = getOption("mc.cores"))
| xdis, ydis, zdis | Dissimilarity matrices or | 
|---|---|
| method | Correlation method, as accepted by  | 
| permutations | a list of control values for the permutations
    as returned by the function  | 
| strata | An integer vector or factor specifying the strata for permutation. If supplied, observations are permuted only within the specified strata. | 
| na.rm | Remove missing values in calculation of Mantel correlation. Use this option with care: Permutation tests can be biased, in particular if two matrices had missing values in matching positions. | 
| parallel | Number of parallel processes or a predefined socket
    cluster.  With  | 
Mantel statistic is simply a correlation between entries of two
  dissimilarity matrices (some use cross products, but these are
  linearly related).  However, the significance cannot be directly
  assessed, because there are \(N(N-1)/2\) entries for just \(N\)
  observations.  Mantel developed asymptotic test, but here we use
  permutations of \(N\) rows and columns of dissimilarity
  matrix. Only the first matrix (xdist) will be permuted, and
  the second is kept constant. See permutations for
  additional details on permutation tests in Vegan.
Partial Mantel statistic uses partial correlation
  conditioned on the third matrix. Only the first matrix is permuted so
  that the correlation structure between second and first matrices is
  kept constant. Although mantel.partial silently accepts other
  methods than "pearson", partial correlations will probably be
  wrong with other methods.
The function uses cor, which should accept
  alternatives pearson for product moment correlations and
  spearman or kendall for rank correlations.
The function returns a list of class mantel with following
  components:
Function call.
Correlation method used, as returned by
    cor.test.
The Mantel statistic.
Empirical significance level from permutations.
A vector of permuted values. The distribution of
    permuted values can be inspected with permustats 
    function.
Number of permutations.
A list of control values for the permutations
    as returned by the function how.
The test is due to Mantel, of course, but the current implementation is based on Legendre and Legendre.
Legendre, P. and Legendre, L. (2012) Numerical Ecology. 3rd English Edition. Elsevier.
Legendre & Legendre (2012, Box 10.4) warn against using partial Mantel correlations.
cor for correlation coefficients,
  protest (Procrustes test) for an alternative with
  ordination diagrams, anosim  and mrpp
  for comparing dissimilarities against 
  classification.  For dissimilarity matrices, see vegdist
  or dist.  See bioenv for selecting
  environmental variables.
## Is vegetation related to environment? data(varespec) data(varechem) veg.dist <- vegdist(varespec) # Bray-Curtis env.dist <- vegdist(scale(varechem), "euclid") mantel(veg.dist, env.dist)#> #> Mantel statistic based on Pearson's product-moment correlation #> #> Call: #> mantel(xdis = veg.dist, ydis = env.dist) #> #> Mantel statistic r: 0.3047 #> Significance: 0.002 #> #> Upper quantiles of permutations (null model): #> 90% 95% 97.5% 99% #> 0.107 0.141 0.167 0.202 #> Permutation: free #> Number of permutations: 999 #>mantel(veg.dist, env.dist, method="spear")#> #> Mantel statistic based on Spearman's rank correlation rho #> #> Call: #> mantel(xdis = veg.dist, ydis = env.dist, method = "spear") #> #> Mantel statistic r: 0.2838 #> Significance: 0.001 #> #> Upper quantiles of permutations (null model): #> 90% 95% 97.5% 99% #> 0.118 0.153 0.179 0.213 #> Permutation: free #> Number of permutations: 999 #>