Rarefaction Species Richness
Rarefied species richness for community ecologists.
rarefy(x, sample, se = FALSE, MARGIN = 1) rrarefy(x, sample) drarefy(x, sample) rarecurve(x, step = 1, sample, xlab = "Sample Size", ylab = "Species", label = TRUE, col, lty, ...) rareslope(x, sample)
- Community data, a matrix-like object or a vector.
- Margin for which the index is computed.
- Subsample size for rarefying community, either a single value or a vector.
- Estimate standard errors.
- Step size for sample sizes in rarefaction curves.
- xlab, ylab
- Axis labels in plots of rarefaction curves.
- Label rarefaction curves by rownames of
- col, lty
- plotting colour and line type, see
par. Can be a vector of length
nrow(x), one per sample, and will be extended to such a length internally.
- Parameters passed to
nlm, or to
rarefy gives the expected species richness in random
subsamples of size
sample from the community. The size of
sample should be smaller than total community size, but the
function will work for larger
sample as well (with a warning)
and return non-rarefied species richness (and standard error =
sample is a vector, rarefaction of all observations is
performed for each sample size separately. Rarefaction can be
performed only with genuine counts of individuals. The function
rarefy is based on Hurlbert's (1971) formulation, and the
standard errors on Heck et al. (1975).
rrarefy generates one randomly rarefied community
data frame or vector of given
sample size. The
can be a vector giving the sample sizes for each row. If the
sample size is equal to or smaller than the observed number
of individuals, the non-rarefied community will be returned. The
random rarefaction is made without replacement so that the variance
of rarefied communities is rather related to rarefaction proportion
than to the size of the
drarefy returns probabilities that species occur in
a rarefied community of size
sample can be
a vector giving the sample sizes for each row. If the
is equal to or smaller than the observed number of individuals, all
observed species will have sampling probability 1.
rarecurve draws a rarefaction curve for each row of
the input data. The rarefaction curves are evaluated using the
step sample sizes, always including 1 and total
sample size. If
sample is specified, a vertical line is
sample with horizontal lines for the rarefied
rareslope calculates the slope of
rarefy) at given
sample size; the
sample need not be an integer.
A vector of rarefied species richness values. With a single
se = TRUE, function
rarefyreturns a 2-row matrix with rarefied richness (
S) and its standard error (
sampleis a vector in
rarefy, the function returns a matrix with a column for each
samplesize, and if
se = TRUE, rarefied richness and its standard error are on consecutive lines.Function
rarefyresults corresponding each drawn curve.
Heck, K.L., van Belle, G. & Simberloff, D. (1975). Explicit calculation of the rarefaction diversity measurement and the determination of sufficient sample size. Ecology 56, 1459--1461. Hurlbert, S.H. (1971). The nonconcept of species diversity: a critique and alternative parameters. Ecology 52, 577--586.
data(BCI) S <- specnumber(BCI) # observed number of species (raremax <- min(rowSums(BCI))) Srare <- rarefy(BCI, raremax) plot(S, Srare, xlab = "Observed No. of Species", ylab = "Rarefied No. of Species") abline(0, 1) rarecurve(BCI, step = 20, sample = raremax, col = "blue", cex = 0.6)