rankindex.RdRank correlations between dissimilarity indices and gradient separation.
rankindex(grad, veg, indices = c("euc", "man", "gow", "bra", "kul"), stepacross = FALSE, method = "spearman", metric = c("euclidean", "mahalanobis", "manhattan", "gower"), ...)
| grad | The gradient variable or matrix. | 
|---|---|
| veg | The community data matrix. | 
| indices | Dissimilarity indices compared, partial matches to
    alternatives in  | 
| stepacross | Use  | 
| method | Correlation method used. | 
| metric | Metric to evaluate the gradient separation. See Details. | 
| ... | Other parameters to  | 
A good dissimilarity index for multidimensional scaling should have
  a high rank-order similarity with gradient separation.  The function
  compares most indices in vegdist against gradient
  separation using rank correlation coefficients in
  cor. The gradient separation between each point is
  assessed using given metric. The default is to use Euclidean
  distance of continuous variables scaled to unit variance, or to use
  Gower metric for mixed data using function
  daisy when grad has factors. The other
  alternatives are Mahalanabis distances which are based on
  grad matrix scaled so that columns are orthogonal
  (uncorrelated) and have unit variance, or Manhattan distances of
  grad variables scaled to unit range.
The indices argument can accept any dissimilarity 
  indices besides the ones calculated by the 
  vegdist function. For this, the argument value
  should be a (possibly named) list of functions.
  Each function must return a valid 'dist' object with dissimilarities,
  similarities are not accepted and should be converted into dissimilarities
  beforehand.
Returns a named vector of rank correlations.
Faith, F.P., Minchin, P.R. and Belbin, L. (1987). Compositional dissimilarity as a robust measure of ecological distance. Vegetatio 69, 57-68.
There are several problems in using rank correlation coefficients.
  Typically there are very many ties when \(n(n-1)/2\) gradient
  separation values are derived from just \(n\) observations.
  Due to floating point arithmetics, many tied values differ by
  machine epsilon and are arbitrarily ranked differently by
  rank used in cor.test.  Two indices
  which are identical with certain
  transformation or standardization may differ slightly
  (magnitude \(10^{-15}\)) and this may lead into third or fourth decimal
  instability in rank correlations.  Small differences in rank
  correlations should not be taken too seriously.  Probably this method
  should be replaced with a sounder method, but I do not yet know
  which...  You may experiment with mantel,
  anosim or even protest.
Earlier version of this function used method = "kendall", but
  that is far too slow in large data sets.
The functions returning dissimilarity objects should be self contained,
  because the ... argument passes additional parameters
  to stepacross and not to the functions supplied
  via the indices argument.
vegdist, stepacross,
  no.shared, monoMDS,
    cor, Machine, and for
    alternatives anosim, mantel and
    protest.
data(varespec) data(varechem) ## The variables are automatically scaled rankindex(varechem, varespec)#> euc man gow bra kul #> 0.2396330 0.2735087 0.2288358 0.2837910 0.2839834#> euc man gow bra kul #> 0.4200990 0.4215642 0.3708606 0.4215642 0.4215642## Using non vegdist indices as functions funs <- list(Manhattan=function(x) dist(x, "manhattan"), Gower=function(x) cluster:::daisy(x, "gower"), Ochiai=function(x) designdist(x, "1-J/sqrt(A*B)")) rankindex(scale(varechem), varespec, funs)#> Manhattan Gower Ochiai #> 0.2735087 0.2288358 0.1696862