Function finds indices of taxonomic diversity and distinctness, which are averaged taxonomic distances among species or individuals in the community (Clarke & Warwick 1998, 2001)

taxondive(comm, dis, match.force = FALSE)
taxa2dist(x, varstep = FALSE, check = TRUE, labels)

Arguments

comm

Community data.

dis

Taxonomic distances among taxa in comm. This should be a dist object or a symmetric square matrix.

match.force

Force matching of column names in comm and labels in dis. If FALSE, matching only happens when dimensions differ, and in that case the species must be in identical order in both.

x

Classification table with a row for each species or other basic taxon, and columns for identifiers of its classification at higher levels.

varstep

Vary step lengths between successive levels relative to proportional loss of the number of distinct classes.

check

If TRUE, remove all redundant levels which are different for all rows or constant for all rows and regard each row as a different basal taxon (species). If FALSE all levels are retained and basal taxa (species) also must be coded as variables (columns). You will get a warning if species are not coded, but you can ignore this if that was your intention.

labels

The labels attribute of taxonomic distances. Row names will be used if this is not given. Species will be matched by these labels in comm and dis in taxondive if these have different dimensions.

Details

Clarke & Warwick (1998, 2001) suggested several alternative indices of taxonomic diversity or distinctness. Two basic indices are called taxonomic diversity (\(\Delta\)) and distinctness (\(\Delta^*\)):

\(\Delta = (\sum \sum_{i<j} \omega_{ij} x_i x_j)/(n (n-1) / 2)\)
\(\Delta^* = (\sum \sum_{i<j} \omega_{ij} x_i x_j)/(\sum \sum_{i<j} x_i x_j) \)

The equations give the index value for a single site, and summation goes over species \(i\) and \(j\). Here \(\omega\) are taxonomic distances among taxa, and \(x\) are species abundances, and \(n\) is the total abundance for a site. With presence/absence data both indices reduce to the same index \(\Delta^+\), and for this index Clarke & Warwick (1998) also have an estimate of its standard deviation. Clarke & Warwick (2001) presented two new indices: \(s\Delta^+\) is the product of species richness and \(\Delta^+\), and index of variation in taxonomic distinctness (\(\Lambda^+\)) defined as

\(\Lambda^+ = (\sum \sum_{i<j} \omega_{ij}^2)/(n (n-1) / 2) - (\Delta^+)^2\)

The dis argument must be species dissimilarities. These must be similar to dissimilarities produced by dist. It is customary to have integer steps of taxonomic hierarchies, but other kind of dissimilarities can be used, such as those from phylogenetic trees or genetic differences. Further, the dis need not be taxonomic, but other species classifications can be used.

Function taxa2dist can produce a suitable dist object from a classification table. Each species (or basic taxon) corresponds to a row of the classification table, and columns give the classification at different levels. With varstep = FALSE the successive levels will be separated by equal steps, and with varstep = TRUE the step length is relative to the proportional decrease in the number of classes (Clarke & Warwick 1999). With check = TRUE, the function removes classes which are distinct for all species or which combine all species into one class, and assumes that each row presents a distinct basic taxon. The function scales the distances so that longest path length between taxa is 100 (not necessarily when check = FALSE).

Function plot.taxondive plots \(\Delta^+\) against Number of species, together with expectation and its approximate 2*sd limits. Function summary.taxondive finds the \(z\) values and their significances from Normal distribution for \(\Delta^+\).

Value

Function returns an object of class taxondive with following items:

Species

Number of species for each site.

D, Dstar, Dplus, SDplus, Lambda

\(\Delta\), \(\Delta^*\), \(\Delta^+\), \(s\Delta^+\) and \(\Lambda^+\) for each site.

sd.Dplus

Standard deviation of \(\Delta^+\).

ED, EDstar, EDplus

Expected values of corresponding statistics.

Function taxa2dist returns an object of class "dist", with an attribute "steps" for the step lengths between successive levels.

References

Clarke, K.R & Warwick, R.M. (1998) A taxonomic distinctness index and its statistical properties. Journal of Applied Ecology 35, 523--531.

Clarke, K.R. & Warwick, R.M. (1999) The taxonomic distinctness measure of biodiversity: weighting of step lengths between hierarchical levels. Marine Ecology Progress Series 184: 21--29.

Clarke, K.R. & Warwick, R.M. (2001) A further biodiversity index applicable to species lists: variation in taxonomic distinctness. Marine Ecology Progress Series 216, 265--278.

Note

The function is still preliminary and may change. The scaling of taxonomic dissimilarities influences the results. If you multiply taxonomic distances (or step lengths) by a constant, the values of all Deltas will be multiplied with the same constant, and the value of \(\Lambda^+\) by the square of the constant.

See also

Examples

## Preliminary: needs better data and some support functions data(dune) data(dune.taxon) # Taxonomic distances from a classification table with variable step lengths. taxdis <- taxa2dist(dune.taxon, varstep=TRUE) plot(hclust(taxdis), hang = -1)
# Indices mod <- taxondive(dune, taxdis) mod
#> Species Delta Delta* Lambda+ Delta+ S Delta+ #> 1 5.000 22.736 29.232 900.298 43.364 216.82 #> 2 10.000 51.046 55.988 822.191 56.232 562.32 #> 3 10.000 41.633 46.194 1025.471 62.869 628.69 #> 4 13.000 50.795 55.140 888.244 64.837 842.88 #> 5 14.000 63.498 67.856 715.393 69.211 968.95 #> 6 11.000 70.201 76.361 628.743 73.281 806.09 #> 7 13.000 61.605 66.187 679.337 69.918 908.94 #> 8 12.000 52.544 56.374 756.375 66.729 800.74 #> 9 13.000 50.526 54.108 849.448 63.205 821.67 #> 10 12.000 60.068 64.960 730.736 69.291 831.49 #> 11 9.000 69.589 77.740 404.609 77.803 700.23 #> 12 9.000 62.405 69.795 552.129 74.470 670.23 #> 13 10.000 47.316 53.842 536.429 66.657 666.57 #> 14 7.000 71.383 82.091 239.543 82.013 574.09 #> 15 8.000 68.564 77.097 334.889 79.010 632.08 #> 16 8.000 55.984 64.400 978.014 69.708 557.66 #> 17 7.000 53.913 60.222 632.990 59.286 415.00 #> 18 9.000 73.235 81.865 438.355 76.288 686.59 #> 19 9.000 68.727 76.091 336.364 78.636 707.73 #> 20 8.000 72.343 80.670 444.915 82.078 656.62 #> Expected 65.330 62.560 71.031
summary(mod)
#> Delta Delta* Delta+ sd(Delta+) z(Delta+) Pr(>|z|) #> 1 22.7362 29.2322 43.3636 10.0499 -2.7530 0.005905 ** #> 2 51.0458 55.9878 56.2323 5.7727 -2.5636 0.010359 * #> 3 41.6334 46.1936 62.8687 5.7727 -1.4140 0.157360 #> 4 50.7952 55.1396 64.8368 4.5677 -1.3562 0.175047 #> 5 63.4979 67.8564 69.2108 4.2482 -0.4285 0.668251 #> 6 70.2011 76.3614 73.2810 5.3189 0.4229 0.672332 #> 7 61.6049 66.1871 69.9184 4.5677 -0.2437 0.807499 #> 8 52.5437 56.3743 66.7287 4.9215 -0.8743 0.381975 #> 9 50.5258 54.1079 63.2051 4.5677 -1.7134 0.086640 . #> 10 60.0680 64.9597 69.2906 4.9215 -0.3537 0.723567 #> 11 69.5894 77.7396 77.8030 6.3011 1.0747 0.282517 #> 12 62.4049 69.7949 74.4697 6.3011 0.5457 0.585290 #> 13 47.3158 53.8421 66.6566 5.7727 -0.7578 0.448548 #> 14 71.3834 82.0909 82.0130 7.7069 1.4249 0.154186 #> 15 68.5645 77.0970 79.0097 6.9314 1.1510 0.249714 #> 16 55.9840 64.3999 69.7078 6.9314 -0.1909 0.848565 #> 17 53.9134 60.2224 59.2857 7.7069 -1.5240 0.127501 #> 18 73.2349 81.8645 76.2879 6.3011 0.8342 0.404155 #> 19 68.7273 76.0909 78.6364 6.3011 1.2069 0.227457 #> 20 72.3431 80.6704 82.0779 6.9314 1.5937 0.111005 #> Expected 65.3302 62.5603 71.0313 #> --- #> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
plot(mod)