Similarity Percentages

Share:

Description

Discriminating species between two groups using Bray-Curtis dissimilarities

Usage

1
2
3
4
5
simper(comm, group, permutations = 0, trace = FALSE, 
    parallel = getOption("mc.cores"), ...)
## S3 method for class 'simper'
summary(object, ordered = TRUE,
    digits = max(3,getOption("digits") - 3), ...)

Arguments

comm

Community data matrix.

group

Factor describing the group structure. Must have at least 2 levels.

permutations

a list of control values for the permutations as returned by the function how, or the number of permutations required, or a permutation matrix where each row gives the permuted indices.

trace

Trace permutations.

object

an object returned by simper.

ordered

Logical; Should the species be ordered by their average contribution?

digits

Number of digits in output.

parallel

Number of parallel processes or a predefined socket cluster. With parallel = 1 uses ordinary, non-parallel processing.

...

Parameters passed to other functions. In simper the extra parameters are passed to shuffleSet if permutations are used.

Details

Similarity percentage, simper (Clarke 1993) is based on the decomposition of Bray-Curtis dissimilarity index (see vegdist, designdist). The contribution of individual species i to the overall Bray-Curtis dissimilarity d[jk] is given by

d[ijk] = abs(x[ij]-x[ik])/sum(x[ij]+x[ik])

where x is the abundance of species i in sampling units j and k. The overall index is the sum of the individual contributions over all S species d[jk] = sum(i=1..S) d[ijk].

The simper functions performs pairwise comparisons of groups of sampling units and finds the average contributions of each species to the average overall Bray-Curtis dissimilarity.

The function displays most important species for each pair of groups. These species contribute at least to 70 % of the differences between groups. The function returns much more extensive results which can be accessed directly from the result object (see section Value). Function summary transforms the result to a list of data frames. With argument ordered = TRUE the data frames also include the cumulative contributions and are ordered by species contribution.

The results of simper can be very difficult to interpret. The method very badly confounds the mean between group differences and within group variation, and seems to single out variable species instead of distinctive species (Warton et al. 2012). Even if you make groups that are copies of each other, the method will single out species with high contribution, but these are not contributions to non-existing between-group differences but to within-group variation in species abundance.

Value

A list of class "simper" with following items:

species

The species names.

average

Average contribution to overall dissimilarity.

overall

The overall between-group dissimilarity.

sd

Standard deviation of contribution.

ratio

Average to sd ratio.

ava, avb

Average abundances per group.

ord

An index vector to order vectors by their contribution or order cusum back to the original data order.

cusum

Ordered cumulative contribution.

p

Permutation p-value. Probability of getting a larger or equal average contribution in random permutation of the group factor.

Author(s)

Eduard Szöcs eduardszoecs@gmail.com

References

Clarke, K.R. 1993. Non-parametric multivariate analyses of changes in community structure. Australian Journal of Ecology, 18, 117–143.

Warton, D.I., Wright, T.W., Wang, Y. 2012. Distance-based multivariate analyses confound location and dispersion effects. Methods in Ecology and Evolution, 3, 89–101.

Examples

1
2
3
4
data(dune)
data(dune.env)
(sim <- with(dune.env, simper(dune, Management)))
summary(sim)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.