Measurement and partitioning of diversity, based on Tsallis entropy, following Marcon and Herault (2015)

entropart is an R package that provides functions to calculate alpha, beta and gamma diversity of communities, including phylogenetic and functional diversity.

Estimation-bias corrections are available.

In the entropart package, individuals of different *species* are counted in several *communities* which may (or not)
be agregated to define a *metacommunity*.
In the metacommunity, the probability to find a species in the weighted average of probabilities in communities.
This is a naming convention, which may correspond to plots in a forest inventory or any data organized the same way.

Basic functions allow computing diversity of a community.
Data is simply a vector of probabilities (summing up to 1) or of abundances (integer values that are numbers of individuals).
Calculate entropy with functions such as *Tsallis*, *Shannon*, *Simpson*, *Hurlbert* or *GenSimpson*
and explicit diversity (i.e. effective number of species) with *Diversity* and others.
By default, the best available estimator of diversity will be used, according to the data.

Communities can be simulated by *rCommunity*, explicitely declared as a species distribution (*as.AbdVector* or *as.ProbaVector*),
and plotted.

Phylogenetic entropy and diversity can be calculated if a phylogenetic (or functional), ultrametric tree is provided.
See *PhyloEntropy*, *Rao* for examples of entropy and *PhyloDiversity* to calculate phylodiversity,
with the state-of-the-art estimation-bias correction.
Similarity-based diversity is calculated with *Dqz*, based on a similarity matrix.

A full documentation is available in the main vignette.
In R, type: `vignette("entropart")`

.
It is a continuous update of the paper published in the Journal of Statistical Software (Marcon & HÃ©rault, 2015).

A quick introduction is in `vignette("docs", "entropart")`

.

Marcon, E. and Herault, B. (2015). entropart: An R Package to Measure and Partition Diversity.
*Journal of Statistical Software*. 67(8): 1-26.

IMPROVEMENTS

o On Travis now. o Reduced package size. o The rule to calculate the number of individuals of MetaCommunities has been changed to improve gamma diversity bias correction. See the user manual vignette. o Generic function arguments cleaned up.

BUG CORRECTION

o Very large metacommunities returned an integer overflow error.

BUG CORRECTION

o HqzBeta() returned erroneous values if a species probability was equal to zero.

IMPROVEMENTS

o On GitHub now. o Documentation updated: phylogenetic dendrograms can be of class phylo, phylog, hclust of PPtree whatever the function. o The introduction vignette is HTML now. o A new vignette is dedicated to phylogenies.

BUG CORRECTION

o Argument checking (CheckArguments = TRUE) is not possible when the package is not loaded and a function is called by entropart::function(). An error was returned. It is replaced by a warning.

IMPROVEMENTS

o Explicit export of all non-internal functions instead of exportPattern("^[[:alpha:]]+") o Updated references to published articles. o Updated help("entropart"). o New introduction vignette. o Vignettes compiled with knitr instead of Sweave.

IMPROVEMENTS

o LazyData is used to save memory. o Better reporting of the argument names in embedded calls of functions.

BUG CORRECTION

o The simulation of log-series communities was incorrect.

USER-VISIBLE CHANGES

o Generalized Simpson's entropy and diversity added (GenSimpson and GenSimpsonD). o Originality.Species() is deprecated because it is pointless. ade4::originality() allows calculating it for q=2. Leinster (2009) and Leinster and Meckes (2015) showed that Originality.Species() does not depend on the order of diversity.

IMPROVEMENTS

o ZhangGrabchak estimator of entropy is now calculated by the C code of EntropyEstimation::Tsallis.z/Entropy.z rather than the R code of bcTsallis(). This is much faster when the number of individual is high. Applies to ChaoWangJost (Best) estimator too.

USER-VISIBLE CHANGES

o DivProfile() now allows computing bootstrap confidence intervals.

BUG CORRECTION

o The entropy estimation (of order different from 1) of a distribution with no singleton returned NA with ChaoWangJost correction. Reported by Zach Marion. Only partly corrected in version 1.4-1. Corrected. o DivEst returned incorrect beta diversity if q was not 1. Corrected.

USER-VISIBLE CHANGES

o All scalar values of diversity or entropy are now named. Their name is the bias correction used to obtain them. o The Unveiled estimator is more versatile. Correction = "Unveil" is deprecated and replaced by "UnveilC", "UnveiliC" or "UnveilJ" in functions such as Tsallis() or Diversity().

IMPROVEMENTS

o Parallelization of DivProfile(), CommunityProfile() and PhyloApply() using the parallel package (mclapply). No effect on Windows, pretty much faster on other systems. o Extensive use of vapply() instead of sapply() makes some functions faster. o AllenH() and ChaoPD() returned NA if the tree contained more species than the probability vector. Now, the tree may be pruned or kept unchanged and extra species considered to have probabilities 0.

BUG CORRECTION

o Using phylog trees in AllenH and ChaoPD() returned erroneous unnormalized diversity (divided by two) because of the conversion of phylog to htree divides branch lengths by two. Corrected. o The richness estimator iChao1 returned NA if the distibution contained singletons but no doubletons. Corrected.

NEW FEATURES

o phylog objects (deprecated in ade4) are replaced by phylo trees from package ape in the definition of the PPtree class. Issues caused by phylog such as replacing . and - by _ in species names do not occur any longer. phylog trees are still accepted for compatibility. o ChaoPD() and AllenH() now accept phylo trees. o Richness now returns a named value. The name contains the estimator used. o Updated CITATION: the paper about this package has been published: Eric Marcon, Bruno Herault (2015). entropart: An R Package to Measure and Partition Diversity. Journal of Statistical Software, 67(8), 1-26.

BUG CORRECTION

o The entropy estimation of a distribution with no singleton returned NA with ChaoWangJost correction. Corrected. o Entropy or diversity of a vector of zeros returned 0. It now returns NA.

NEW FEATURES

o Abundance and probability vector objects. See ?SpeciesDistribution o Hurlbert diversity. See ?Hurlbert o Optimal.Similarity. o Miller-Madow estimator of entropy (Miller, 1955) added in bcShannon(). o Chao and Jost (2015) estimator of diversity added in bcTsallis() and bcDiversity(). New "best" estimator. o Chao et al. (2015) probability estimation of observed species. See ?TunedPs o Estimators of the number of species. See ?Richness o Abundance Frequency Count of species. See ?AbdFreqCount o Community profiles can be calculated with confidence intervals. See ?CommunityProfile o Random Communities. See ?rCommunity

BUG CORRECTION

o Applying bcTsallis and similar functions with a probability vector instead of abundance values could cause errors depending in the correction. Correction is now forced to "None" with a warning. o Allowed rounding error was too small on some systems (typically r-patched-solaris-sparc) to recognize probability vectors. The difference between their sum and 1 had to be less than 3 times .Machine$double.eps. Now set to S times (where S is the number of species, i.e the vector's length).

NEW FEATURES

o Zhang and Grabchak (2014) bias correction for Shannon beta entropy added. o Unbiased estimator of Rao's entropy added (bcRao).

BUG CORRECTION

o DqZ() and Hqz() returned an error if all probability values were 0 except one.

IMPROVEMENTS

o Improved readability of error messages for bad arguments. o Improved formating of summmary.DivPart(). Lines were too long. o Improved legend for the x-axis of plot.DivPart ("alpha and gamma" instead of "alpha/gamma"). o Improved support of PhyloValue objects (summary added). o Improved help for MetaCommunity.

BUG CORRECTION

o ChaoPD() returned an incorrect value when q=0 and some probabilities =0.

NEW FEATURES

o Full support of similarity-based diversity added

IMPROVEMENTS

o Default values for arguments added whenever possible.

NEW FEATURES

o Zhang(2012) bias correction for Shannon entropy added. o Zhang and Grabchak (2014) bias correction for Tsallis entropy added.

BUG CORRECTION

o Divest() always calculated neutral diversity of simulated communities so the confidence interval was erroneous for phylodiversity. Corrected.

NEW FEATURES

o Paracou618.dist distance matrix between species of Paracou618.MC added.

IMPROVEMENTS

o Imports directive rather than Depends for ade4. o mergeandlabels does not return warnings any longer (column names are better addressed).

BUG CORRECTION

o Legend was not displayed in plot.DivProfile(..., Which="Communities"). Corrected.

NEW FEATURES

o Chao, Wang and Jost (2013) bias correction for Shannon entropy added. o EntropyCI function added: Entropy of Monte-Carlo simulated communities. o Tools to manipulate MetaCommunity objects added (see ?MergeMC) o SimTest class added to test a value against a simulated distribution (see ?SimTest). o Vignette added.

BUG CORRECTION

o Hqz() was erroneous for q!=1. Corrected. o bcPhyloEntropy() and bcPhyloDiversity() returned an incorrect $Distribution component. Corrected. o summary.MCentropy() did not return the name of the tree. Corrected.

OVERVIEW

```
o First version.
```