| specpool {vegan} | R Documentation |
The functions estimate the extrapolated species richness in a species
pool, or the number of unobserved species. Function specpool
is based on incidences in sample sites, and gives a single estimate
for a collection of sample sites (matrix). Function estimateR
is based on abundances (counts) on single sample site.
specpool(x, pool)
estimateR(x, ...)
specpool2vect(X, index = c("jack1","jack2", "chao", "boot","Species"))
poolaccum(x, permutations = 100, minsize = 3)
estaccumR(x, permutations = 100)
## S3 method for class 'poolaccum':
summary(object, display, alpha = 0.05, ...)
## S3 method for class 'poolaccum':
plot(x, alpha = 0.05, type = c("l","g"), ...)
x |
Data frame or matrix with species data or the analysis result
for plot function. |
pool |
A vector giving a classification for pooling the sites in the species data. If missing, all sites are pooled together. |
X, object |
A specpool result object. |
index |
The selected index of extrapolated richness. |
permutations |
Number of permutations of sampling order of sites. |
minsize |
Smallest number of sampling units reported. |
display |
Indices to be displayed. |
alpha |
Level of quantiles shown. This proportion will be left outside symmetric limits. |
type |
Type of graph produced in xyplot. |
... |
Other parameters (not used). |
Many species will always remain unseen or undetected in a collection of sample plots. The function uses some popular ways of estimating the number of these unseen species and adding them to the observed species richness (Palmer 1990, Colwell & Coddington 1994).
The incidence-based estimates in specpool use the frequencies
of species in a collection of sites.
In the following, S_P is the extrapolated richness in a pool,
S_0 is the observed number of species in the
collection, a1 and a2 are the number of species
occurring only in one or only in two sites in the collection, p_i
is the frequency of species i, and N is the number of
sites in the collection. The variants of extrapolated richness in
specpool are:
| Chao | S_P = S_0 + a1^2/(2*a2) |
| First order jackknife | S_P = S_0 + a1*(N-1)/N |
| Second order jackknife | S_P = S_0 + a1*(2*n-3)/n - a2*(n-2)^2/n/(n-1) |
| Bootstrap | S_P = S_0 + Sum (1-p_i)^N |
The abundance-based estimates in estimateR use counts (frequencies) of
species in a single site. If called for a matrix or data frame, the
function will give separate estimates for each site. The two
variants of extrapolated richness in estimateR are Chao
(unbiased variant) and ACE. In the Chao estimate
a_i refers to number of species with abundance i instead
of incidence:
| Chao | S_P = S_0 + a1*(a1-1)/(2*(a2+1)) |
| ACE | S_P = S_abund + S_rare/C_ace + a1/C_ace * gamma^2 |
| where | C_{ace} = 1- a1/N_{rare} |
| gamma^2 = max( S_rare/C_ace (sum[i=1..10] i*(i-1)*a_i) / N_rare/(N_rare-1) -1 , 0) |
Here a_i refers to number of species with abundance i and S_rare is the number of rare species, S_abund is the number of abundant species, with an arbitrary threshold of abundance 10 for rare species, and N_rare is the number of individuals in rare species.
Functions estimate the standard errors of the estimates. These only concern the number of added species, and assume that there is no variance in the observed richness. The equations of standard errors are too complicated to be reproduced in this help page, but they can be studied in the R source code of the function. The standard error are based on the following sources: Chao (1987) for the Chao estimate and Smith and van Belle (1984) for the first-order Jackknife and the bootstrap (second-order jackknife is still missing). The variance estimator of S_ace was developed by Bob O'Hara (unpublished).
Functions poolaccum and estaccumR are similar to
specaccum, but estimateextrapolated richness indices
of specpool or estimateR in addition to number of
species for random ordering of sampling units. Function
specpool uses presence data and estaccumR count
data. The functions share summary and plot
methods. The summary returns quantile envilopes of
permutations corresponding the given level of alpha and
standard deviation of permutations for each sample size. The
plot function shows the mean and envelope of permutations
with given alpha for models. The selection of models can be
restricted and order changes using the display argument in
summary or plot. For configuration of plot
command, see xyplot
Function specpool returns a data frame with entries for
observed richness and each of the indices for each class in
pool vector. The utility function specpool2vect maps
the pooled values into a vector giving the value of selected
index for each original site. Function estimateR
returns the estimates and their standard errors for each
site. Functions poolaccum and estimateR return
matrices of permutation results for each richness estimator, the
vector of sample sizes and a table of means of permutations
for each estimator.
The functions are based on assumption that there is a species pool: The community is closed so that there is a fixed pool size S_P. Such cases may exist, although I have not seen them yet. All indices are biased for open communities.
See http://viceroy.eeb.uconn.edu/EstimateS for a more complete (and positive) discussion and alternative software for some platforms.
Bob O'Hara (estimateR) and Jari Oksanen.
Chao, A. (1987). Estimating the population size for capture-recapture data with unequal catchability. Biometrics 43, 783–791.
Colwell, R.K. & Coddington, J.A. (1994). Estimating terrestrial biodiversity through extrapolation. Phil. Trans. Roy. Soc. London B 345, 101–118.
Palmer, M.W. (1990). The estimation of species richness by extrapolation. Ecology 71, 1195–1198.
Smith, E.P & van Belle, G. (1984). Nonparametric estimation of species richness. Biometrics 40, 119–129.
veiledspec, diversity, beals,
specaccum.
data(dune) data(dune.env) attach(dune.env) pool <- specpool(dune, Management) pool op <- par(mfrow=c(1,2)) boxplot(specnumber(dune) ~ Management, col="hotpink", border="cyan3", notch=TRUE) boxplot(specnumber(dune)/specpool2vect(pool) ~ Management, col="hotpink", border="cyan3", notch=TRUE) par(op) data(BCI) ## Accumulation model pool <- poolaccum(BCI) summary(pool, display = "chao") plot(pool) ## Quantitative model estimateR(BCI[1:5,])