Subsample size for rarefying community, either a single
value or a vector.
se
Estimate standard errors.
step
Step size for sample sizes in rarefaction curves.
xlab, ylab
Axis labels in plots of rarefaction curves.
label
Label rarefaction curves by rownames of x
(logical).
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 plot,
lines and ordilabel in rarecurve.
Details
Function 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 =
0). If 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).
Function rrarefy generates one randomly rarefied community
data frame or vector of given sample size. The sample
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 sample.
Function drarefy returns probabilities that species occur in
a rarefied community of size sample. The sample can be
a vector giving the sample sizes for each row. If the sample
is equal to or smaller than the observed number of individuals, all
observed species will have sampling probability 1.
Function rarecurve draws a rarefaction curve for each row of
the input data. The rarefaction curves are evaluated using the
interval of step sample sizes, always including 1 and total
sample size. If sample is specified, a vertical line is
drawn at sample with horizontal lines for the rarefied
species richnesses.
Function rareslope calculates the slope of rarecurve
(derivative of rarefy) at given sample size; the
sample need not be an integer.
Value
A vector of rarefied species richness values. With a single
sample and se = TRUE, function rarefy returns a
2-row matrix with rarefied richness (S) and its standard error
(se). If sample is a vector in rarefy, the
function returns a matrix with a column for each sample size,
and if se = TRUE, rarefied richness and its standard error are
on consecutive lines.
Function rarecurve returns invisible list of
rarefy results corresponding each drawn curve.
Author(s)
Jari Oksanen
References
Heck, K.L., van Belle, G. & Simberloff, D. (1975). Explicit
calculation of the rarefaction diversity measurement and the
determination of sufficient sample size. Ecology56,
1459–1461.
Hurlbert, S.H. (1971). The nonconcept of species diversity: a critique
and alternative parameters. Ecology52, 577–586.
See Also
Use specaccum for species accumulation curves
where sites are sampled instead of individuals. specpool
extrapolates richness to an unknown sample size.
Examples
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)