[Vegan-commits] r2955 - in pkg/vegan: R man
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Wed Aug 26 09:03:51 CEST 2015
Author: jarioksa
Date: 2015-08-26 09:03:51 +0200 (Wed, 26 Aug 2015)
New Revision: 2955
Added:
pkg/vegan/man/rarefy.Rd
Modified:
pkg/vegan/R/anova.cca.R
pkg/vegan/R/anova.ccabyterm.R
pkg/vegan/R/anova.ccalist.R
pkg/vegan/R/anova.ccanull.R
pkg/vegan/R/print.cca.R
pkg/vegan/man/adipart.Rd
pkg/vegan/man/cca.Rd
pkg/vegan/man/diversity.Rd
pkg/vegan/man/specaccum.Rd
Log:
Merge branch 'cran-2.3' into r-forge-svn-local
Modified: pkg/vegan/R/anova.cca.R
===================================================================
--- pkg/vegan/R/anova.cca.R 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/R/anova.cca.R 2015-08-26 07:03:51 UTC (rev 2955)
@@ -61,9 +61,14 @@
Pval <- (sum(tst$F.perm >= tst$F.0) + 1)/(tst$nperm + 1)
Pval <- c(Pval, NA)
table <- data.frame(tst$df, tst$chi, Fval, Pval)
- is.rda <- inherits(object, "rda")
- colnames(table) <- c("Df", ifelse(is.rda, "Variance", "ChiSquare"),
- "F", "Pr(>F)")
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
+ colnames(table) <- c("Df", varname, "F", "Pr(>F)")
head <- paste0("Permutation test for ", tst$method, " under ",
tst$model, " model\n", howHead(control))
mod <- paste("Model:", c(object$call))
Modified: pkg/vegan/R/anova.ccabyterm.R
===================================================================
--- pkg/vegan/R/anova.ccabyterm.R 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/R/anova.ccabyterm.R 2015-08-26 07:03:51 UTC (rev 2955)
@@ -27,13 +27,18 @@
sol <- anova.ccalist(mods, permutations = permutations,
model = model, parallel = parallel)
## Reformat
- out <- data.frame(c(sol[-1,3], sol[ntrm+1,1]),
- c(sol[-1,4], sol[ntrm+1,2]),
- c(sol[-1,5], NA),
- c(sol[-1,6], NA))
- isRDA <- inherits(object, "rda")
- colnames(out) <- c("Df", ifelse(isRDA, "Variance", "ChiSquare"),
- "F", "Pr(>F)")
+ out <- data.frame(c(sol[-1, 3], sol[ntrm+1, 1]),
+ c(sol[-1, 4], sol[ntrm+1, 2]),
+ c(sol[-1, 5], NA),
+ c(sol[-1, 6], NA))
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
+ colnames(out) <- c("Df", varname, "F", "Pr(>F)")
rownames(out) <- c(trmlab, "Residual")
head <- paste0("Permutation test for ", object$method, " under ",
model, " model\n",
@@ -94,9 +99,14 @@
## Collect results to anova data.frame
out <- data.frame(c(Df, dfbig), c(Chisq, chibig),
c(Fstat, NA), c(Pval, NA))
- isRDA <- inherits(object, "rda")
- colnames(out) <- c("Df", ifelse(isRDA, "Variance", "ChiSquare"),
- "F", "Pr(>F)")
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
+ colnames(out) <- c("Df", varname, "F", "Pr(>F)")
rownames(out) <- c(trmlab, "Residual")
head <- paste0("Permutation test for ", object$method, " under ",
mods[[1]]$model, " model\n",
@@ -157,9 +167,14 @@
out <- data.frame(c(Df, resdf), c(eig, object$CA$tot.chi),
c(Fstat, NA), c(Pvals,NA))
rownames(out) <- c(names(eig), "Residual")
- isRDA <- inherits(object, "rda")
- colnames(out) <- c("Df", ifelse(isRDA, "Variance", "ChiSquare"),
- "F", "Pr(>F)")
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
+ colnames(out) <- c("Df", varname, "F", "Pr(>F)")
head <- paste0("Permutation test for ", object$method, " under ",
model, " model\n",
"Marginal tests for axes\n",
Modified: pkg/vegan/R/anova.ccalist.R
===================================================================
--- pkg/vegan/R/anova.ccalist.R 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/R/anova.ccalist.R 2015-08-26 07:03:51 UTC (rev 2955)
@@ -72,13 +72,16 @@
## collect table
table <- data.frame(resdf, resdev, c(NA, df),
c(NA,changedev), c(NA,fval), c(NA,pval))
- isRDA <- method != "cca"
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
dimnames(table) <- list(1L:nmodels,
- c("Res.Df",
- ifelse(isRDA,"Res.Variance", "Res.ChiSquare"),
- "Df",
- ifelse(isRDA,"Variance","ChiSquare"),
- "F", "Pr(>F)"))
+ c("ResDf", paste0("Res", varname), "Df",
+ varname, "F", "Pr(>F)"))
## Collect header information
formulae <- sapply(object, function(z) deparse(formula(z)))
head <- paste0("Permutation tests for ", method, " under ",
Modified: pkg/vegan/R/anova.ccanull.R
===================================================================
--- pkg/vegan/R/anova.ccanull.R 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/R/anova.ccanull.R 2015-08-26 07:03:51 UTC (rev 2955)
@@ -4,19 +4,24 @@
`anova.ccanull` <-
function(object, ...)
{
- table <- matrix(0, nrow = 2, ncol = 5)
+ table <- matrix(0, nrow = 2, ncol = 4)
if (object$CA$rank == 0) {
- table[1,] <- c(object$CCA$qrank, object$CCA$tot.chi, NA, 0, NA)
- table[2,] <- c(0,0,NA,NA,NA)
+ table[1,] <- c(object$CCA$qrank, object$CCA$tot.chi, NA, NA)
+ table[2,] <- c(0,0,NA,NA)
}
else {
- table[1,] <- c(0,0,0,0,NA)
- table[2,] <- c(nrow(object$CA$u) - 1, object$CA$tot.chi, NA, NA, NA)
+ table[1,] <- c(0,0,0,NA)
+ table[2,] <- c(nrow(object$CA$u) - 1, object$CA$tot.chi, NA, NA)
}
rownames(table) <- c("Model", "Residual")
- colnames(table) <- c("Df",
- if (inherits(object, "rda")) "Var" else "Chisq",
- "F", "N.Perm", "Pr(>F)")
+ if (inherits(object, "capscale") &&
+ (object$adjust != 1 || is.null(object$adjust)))
+ varname <- "SumOfSqs"
+ else if (inherits(object, "rda"))
+ varname <- "Variance"
+ else
+ varname <- "ChiSquare"
+ colnames(table) <- c("Df", varname, "F", "Pr(>F)")
table <- as.data.frame(table)
if (object$CA$rank == 0)
head <- "No residual component\n"
Modified: pkg/vegan/R/print.cca.R
===================================================================
--- pkg/vegan/R/print.cca.R 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/R/print.cca.R 2015-08-26 07:03:51 UTC (rev 2955)
@@ -27,7 +27,7 @@
## Remove "Proportion" if only one component
if (is.null(x$CCA) && is.null(x$pCCA))
tbl <- tbl[,-2]
- printCoefmat(tbl, digits = digits, na.print = "", zap.ind = 1:2)
+ printCoefmat(tbl, digits = digits, na.print = "")
cat("Inertia is", x$inertia, "\n")
if (!is.null(x$CCA$alias))
cat("Some constraints were aliased because they were collinear (redundant)\n")
Modified: pkg/vegan/man/adipart.Rd
===================================================================
--- pkg/vegan/man/adipart.Rd 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/man/adipart.Rd 2015-08-26 07:03:51 UTC (rev 2955)
@@ -145,9 +145,11 @@
\author{
\enc{Péter Sólymos}{Peter Solymos}, \email{solymos at ualberta.ca}}
- \seealso{See \code{\link{oecosimu}} for permutation settings and
- calculating \eqn{p}-values. }
+\seealso{See \code{\link{oecosimu}} for permutation settings and
+ calculating \eqn{p}-values. \code{\link{multipart}} for multiplicative
+ diversity partitioning.}
+
\examples{
## NOTE: 'nsimul' argument usually needs to be >= 99
## here much lower value is used for demonstration
Modified: pkg/vegan/man/cca.Rd
===================================================================
--- pkg/vegan/man/cca.Rd 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/man/cca.Rd 2015-08-26 07:03:51 UTC (rev 2955)
@@ -131,7 +131,7 @@
constraints. However, the curve artefact can be avoided only with a
low number of constraints that do not have a curvilinear relation with
each other. The curve can reappear even with two badly chosen
- constraints or a single factor. Although the formula interface makes
+ constraints or a single factor. Although the formula interface makes it
easy to include polynomial or interaction terms, such terms often
produce curved artefacts (that are difficult to interpret), these
should probably be avoided.
@@ -171,7 +171,7 @@
vignette with this package.
}
\references{ The original method was by ter Braak, but the current
- implementations follows Legendre and Legendre.
+ implementation follows Legendre and Legendre.
Legendre, P. and Legendre, L. (2012) \emph{Numerical Ecology}. 3rd English
ed. Elsevier.
Modified: pkg/vegan/man/diversity.Rd
===================================================================
--- pkg/vegan/man/diversity.Rd 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/man/diversity.Rd 2015-08-26 07:03:51 UTC (rev 2955)
@@ -1,27 +1,16 @@
\encoding{UTF-8}
\name{diversity}
\alias{diversity}
-\alias{rarefy}
-\alias{rrarefy}
-\alias{drarefy}
-\alias{rarecurve}
-\alias{rareslope}
\alias{fisher.alpha}
\alias{specnumber}
-\title{ Ecological Diversity Indices and Rarefaction Species Richness }
+\title{Ecological Diversity Indices}
-\description{ Shannon, Simpson, and Fisher diversity indices
-and rarefied species richness for community ecologists. }
+\description{ Shannon, Simpson, and Fisher diversity indices and species
+ richness. }
\usage{
diversity(x, index = "shannon", MARGIN = 1, base = exp(1))
-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)
fisher.alpha(x, MARGIN = 1, ...)
specnumber(x, groups, MARGIN = 1)
}
@@ -32,20 +21,9 @@
\code{"simpson"} or \code{"invsimpson"}.}
\item{MARGIN}{Margin for which the index is computed. }
\item{base}{ The logarithm \code{base} used in \code{shannon}.}
- \item{sample}{Subsample size for rarefying community, either a single
- value or a vector.}
- \item{se}{Estimate standard errors.}
- \item{step}{Step size for sample sizes in rarefaction curves.}
- \item{xlab, ylab}{Axis labels in plots of rarefaction curves.}
- \item{label}{Label rarefaction curves by rownames of \code{x}
- (logical).}
- \item{col, lty}{plotting colour and line type, see
- \code{\link{par}}. Can be a vector of length \code{nrow(x)}, one per
- sample, and will be extended to such a length internally.}
\item{groups}{A grouping factor: if given, finds the total number of
species in each group.}
- \item{...}{Parameters passed to \code{\link{nlm}}, or to \code{\link{plot}},
- \code{\link{lines}} and \code{\link{ordilabel}} in \code{rarecurve}.}
+ \item{...}{Parameters passed to the function.}
}
\details{
Shannon or Shannon--Weaver (or Shannon--Wiener) index is defined as
@@ -59,40 +37,6 @@
sum p_i^2}. Choice \code{simpson} returns \eqn{1-D} and
\code{invsimpson} returns \eqn{1/D}.
- Function \code{rarefy} gives the expected species richness in random
- subsamples of size \code{sample} from the community. The size of
- \code{sample} should be smaller than total community size, but the
- function will work for larger \code{sample} as well (with a warning)
- and return non-rarefied species richness (and standard error =
- 0). If \code{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
- \code{rarefy} is based on Hurlbert's (1971) formulation, and the
- standard errors on Heck et al. (1975).
-
- Function \code{rrarefy} generates one randomly rarefied community data
- frame or vector of given \code{sample} size. The \code{sample} can be
- a vector giving the sample sizes for each row, and its values must be
- less or equal to observed number of individuals. The random
- rarefaction is made without replacement so that the variance of
- rarefied communities is rather related to rarefaction proportion than
- to to the size of the \code{sample}.
-
- Function \code{drarefy} returns probabilities that species occur in a
- rarefied community of size \code{sample}. The \code{sample} can be a
- vector giving the sample sizes for each row.
-
- Function \code{rarecurve} draws a rarefaction curve for each row of
- the input data. The rarefaction curves are evaluated using the
- interval of \code{step} sample sizes, always including 1 and total
- sample size. If \code{sample} is specified, a vertical line is
- drawn at \code{sample} with horizontal lines for the rarefied
- species richnesses.
-
- Function \code{rareslope} calculates the slope of \code{rarecurve}
- (derivative of \code{rarefy}) at given \code{sample} size; the
- \code{sample} need not be an integer.
-
\code{fisher.alpha} estimates the \eqn{\alpha} parameter of
Fisher's logarithmic series (see \code{\link{fisherfit}}).
The estimation is possible only for genuine
@@ -114,26 +58,11 @@
inverse Simpson is asymptotically equal to rarefied species richness
in sample of two individuals, and Fisher's \eqn{\alpha} is very
similar to inverse Simpson.
+
}
\value{
- A vector of diversity indices or rarefied species richness values. With
- a single \code{sample} and \code{se = TRUE}, function \code{rarefy}
- returns a 2-row matrix
- with rarefied richness (\code{S}) and its standard error
- (\code{se}). If \code{sample} is a vector in \code{rarefy}, the
- function returns a matrix with a column for each \code{sample} size,
- and if \code{se = TRUE}, rarefied richness and its standard error are
- on consecutive lines.
-
- Function \code{rarecurve} returns \code{\link{invisible}} list of
- \code{rarefy} results corresponding each drawn curve.
-
- With option \code{se = TRUE}, function \code{fisher.alpha} returns a
- data frame with items for \eqn{\alpha} (\code{alpha}), its approximate
- standard errors (\code{se}), residual degrees of freedom
- (\code{df.residual}), and the \code{code} returned by
- \code{\link{nlm}} on the success of estimation.
+ A vector of diversity indices or numbers of species.
}
\references{
@@ -141,19 +70,21 @@
between the number of species and the number of individuals in a
random sample of animal population. \emph{Journal of Animal Ecology}
\strong{12}, 42--58.
-
- Heck, K.L., van Belle, G. & Simberloff, D. (1975). Explicit
- calculation of the rarefaction diversity measurement and the
- determination of sufficient sample size. \emph{Ecology} \strong{56},
- 1459--1461.
Hurlbert, S.H. (1971). The nonconcept of species diversity: a critique
and alternative parameters. \emph{Ecology} \strong{52}, 577--586.
}
-\seealso{Function \code{renyi} for generalized \enc{Rényi}{Renyi}
- diversity and Hill numbers.}
+\seealso{These functions calculate only some basic indices, but many
+ others can be derived with them (see Examples). Facilities related to
+ diversity are discussed in a \pkg{vegan} vignette that can be read
+ with command \code{vegandocs("diversity")}. Functions
+ \code{\link{renyi}} and \code{\link{tsallis}} estimate a series of
+ generalized diversity indices. Function \code{\link{rarefy}} finds
+ estimated number of species for given sample size. Beta diversity can
+ be estimated with \code{\link{betadiver}}. Diversities can be
+ partitioned with \code{\link{adipart}} and \code{\link{multipart}}. }
\author{ Jari Oksanen and Bob O'Hara (\code{fisher.alpha}).}
@@ -162,7 +93,7 @@
H <- diversity(BCI)
simp <- diversity(BCI, "simpson")
invsimp <- diversity(BCI, "inv")
-## Unbiased Simpson of Hurlbert 1971 (eq. 5):
+## Unbiased Simpson (Hurlbert 1971, eq. 5) with rarefy:
unbias.simp <- rarefy(BCI, 2) - 1
## Fisher alpha
alpha <- fisher.alpha(BCI)
@@ -177,12 +108,6 @@
alpha <- with(dune.env, tapply(specnumber(dune), Management, mean))
gamma <- with(dune.env, specnumber(dune, Management))
gamma/alpha - 1
-## Rarefaction
-(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)
}
\keyword{ univar }
Copied: pkg/vegan/man/rarefy.Rd (from rev 2954, pkg/vegan/man/diversity.Rd)
===================================================================
--- pkg/vegan/man/rarefy.Rd (rev 0)
+++ pkg/vegan/man/rarefy.Rd 2015-08-26 07:03:51 UTC (rev 2955)
@@ -0,0 +1,116 @@
+\name{rarefy}
+\alias{rarefy}
+\alias{rrarefy}
+\alias{drarefy}
+\alias{rarecurve}
+\alias{rareslope}
+
+\title{Rarefaction Species Richness}
+
+\description{ Rarefied species richness for community ecologists. }
+
+\usage{
+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)
+}
+
+\arguments{
+ \item{x}{Community data, a matrix-like object or a vector.}
+ \item{MARGIN}{Margin for which the index is computed. }
+ \item{sample}{Subsample size for rarefying community, either a single
+ value or a vector.}
+ \item{se}{Estimate standard errors.}
+ \item{step}{Step size for sample sizes in rarefaction curves.}
+ \item{xlab, ylab}{Axis labels in plots of rarefaction curves.}
+ \item{label}{Label rarefaction curves by rownames of \code{x}
+ (logical).}
+ \item{col, lty}{plotting colour and line type, see
+ \code{\link{par}}. Can be a vector of length \code{nrow(x)}, one per
+ sample, and will be extended to such a length internally.}
+ \item{...}{Parameters passed to \code{\link{nlm}}, or to \code{\link{plot}},
+ \code{\link{lines}} and \code{\link{ordilabel}} in \code{rarecurve}.}
+}
+\details{
+
+ Function \code{rarefy} gives the expected species richness in random
+ subsamples of size \code{sample} from the community. The size of
+ \code{sample} should be smaller than total community size, but the
+ function will work for larger \code{sample} as well (with a warning)
+ and return non-rarefied species richness (and standard error =
+ 0). If \code{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
+ \code{rarefy} is based on Hurlbert's (1971) formulation, and the
+ standard errors on Heck et al. (1975).
+
+ Function \code{rrarefy} generates one randomly rarefied community data
+ frame or vector of given \code{sample} size. The \code{sample} can be
+ a vector giving the sample sizes for each row, and its values must be
+ less or equal to observed number of individuals. The random
+ rarefaction is made without replacement so that the variance of
+ rarefied communities is rather related to rarefaction proportion than
+ to to the size of the \code{sample}.
+
+ Function \code{drarefy} returns probabilities that species occur in a
+ rarefied community of size \code{sample}. The \code{sample} can be a
+ vector giving the sample sizes for each row.
+
+ Function \code{rarecurve} draws a rarefaction curve for each row of
+ the input data. The rarefaction curves are evaluated using the
+ interval of \code{step} sample sizes, always including 1 and total
+ sample size. If \code{sample} is specified, a vertical line is
+ drawn at \code{sample} with horizontal lines for the rarefied
+ species richnesses.
+
+ Function \code{rareslope} calculates the slope of \code{rarecurve}
+ (derivative of \code{rarefy}) at given \code{sample} size; the
+ \code{sample} need not be an integer.
+
+}
+
+\value{
+ A vector of rarefied species richness values. With a single
+ \code{sample} and \code{se = TRUE}, function \code{rarefy} returns a
+ 2-row matrix with rarefied richness (\code{S}) and its standard error
+ (\code{se}). If \code{sample} is a vector in \code{rarefy}, the
+ function returns a matrix with a column for each \code{sample} size,
+ and if \code{se = TRUE}, rarefied richness and its standard error are
+ on consecutive lines.
+
+ Function \code{rarecurve} returns \code{\link{invisible}} list of
+ \code{rarefy} results corresponding each drawn curve.
+}
+
+\references{
+ Heck, K.L., van Belle, G. & Simberloff, D. (1975). Explicit
+ calculation of the rarefaction diversity measurement and the
+ determination of sufficient sample size. \emph{Ecology} \strong{56},
+ 1459--1461.
+
+ Hurlbert, S.H. (1971). The nonconcept of species diversity: a critique
+ and alternative parameters. \emph{Ecology} \strong{52}, 577--586.
+
+}
+
+\seealso{Use \code{\link{specaccum}} for species accumulation curves
+ where sites are sampled instead of individuals. \code{\link{specpool}}
+ extrapolates richness to an unknown sample size.}
+
+\author{Jari Oksanen}
+
+\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)
+}
+\keyword{ univar }
+
+
Modified: pkg/vegan/man/specaccum.Rd
===================================================================
--- pkg/vegan/man/specaccum.Rd 2015-07-15 08:28:34 UTC (rev 2954)
+++ pkg/vegan/man/specaccum.Rd 2015-08-26 07:03:51 UTC (rev 2955)
@@ -14,7 +14,7 @@
\alias{deviance.fitspecaccum}
\alias{specslope}
-\title{Species Accumulation Curves }
+\title{Species Accumulation Curves}
\description{
Function \code{specaccum} finds species accumulation curves or the
number of species for a certain number of sampled sites or
@@ -96,31 +96,31 @@
\item{...}{Other parameters to functions.}
}
\details{
- Species accumulation curves (SAC) are used to compare diversity properties
- of community data sets using different accumulator functions. The
- classic method is \code{"random"} which finds the mean SAC and its
- standard deviation from random permutations of the data, or
- subsampling without replacement (Gotelli & Colwell 2001).
- The \code{"exact"} method finds the
- expected SAC using the method that was independently developed by
- Ugland et al. (2003), Colwell et al. (2004) and Kindt et al. (2006).
- The unconditional standard deviation for the exact SAC represents a
- moment-based estimation that is not conditioned on the empirical data
- set (sd for all samples > 0), unlike the conditional standard deviation
- that was developed by Jari Oksanen (not published, sd=0 for all
- samples). The unconditional standard deviation is based on an estimation
- of the total extrapolated number of species in the survey area
- (a.k.a. gamma diversity), as estimated by
- function \code{\link{specpool}}.
- Method \code{"coleman"} finds the expected SAC and its standard
- deviation following Coleman et al. (1982). All these methods are
- based on sampling sites without replacement. In contrast, the
- \code{method = "rarefaction"} finds the expected species richness and
- its standard deviation by sampling individuals instead of sites.
- It achieves this by applying function \code{\link{rarefy}} with
- number of individuals corresponding to average number of individuals
- per site.
+ Species accumulation curves (SAC) are used to compare diversity
+ properties of community data sets using different accumulator
+ functions. The classic method is \code{"random"} which finds the mean
+ SAC and its standard deviation from random permutations of the data,
+ or subsampling without replacement (Gotelli & Colwell 2001). The
+ \code{"exact"} method finds the expected SAC using sample-based
+ rarefaction method that has been independently developed numerous
+ times (Chiarucci et al. 2008) and it is often known as Mao Tau
+ estimate (Colwell et al. 2012). The unconditional standard deviation
+ for the exact SAC represents a moment-based estimation that is not
+ conditioned on the empirical data set (sd for all samples > 0). The
+ unconditional standard deviation is based on an estimation of the
+ extrapolated number of species in the survey area (a.k.a. gamma
+ diversity), as estimated by function \code{\link{specpool}}. The
+ conditional standard deviation that was developed by Jari Oksanen (not
+ published, sd=0 for all samples). Method \code{"coleman"} finds the
+ expected SAC and its standard deviation following Coleman et
+ al. (1982). All these methods are based on sampling sites without
+ replacement. In contrast, the \code{method = "rarefaction"} finds the
+ expected species richness and its standard deviation by sampling
+ individuals instead of sites. It achieves this by applying function
+ \code{\link{rarefy}} with number of individuals corresponding to
+ average number of individuals per site.
+
Methods \code{"random"} and \code{"collector"} can take weights
(\code{w}) that give the sampling effort for each site. The weights
\code{w} do not influence the order the sites are accumulated, but
@@ -232,34 +232,27 @@
}
\references{
+ Chiarucci, A., Bacaro, G., Rocchini, D. & Fattorini,
+ L. (2008). Discovering and rediscovering the sample-based rarefaction
+ formula in the ecological literature. \emph{Commun. Ecol.} 9:
+ 121--123.
+
Coleman, B.D, Mares, M.A., Willis, M.R. & Hsieh,
Y. (1982). Randomness, area and species richness. \emph{Ecology} 63:
1121--1133.
- Colwell, R.K., Mao, C.X. & Chang, J. (2004). Interpolating,
- extrapolating, and comparing incidence-based species accumulation
- curves. \emph{Ecology} 85: 2717--2727.
+ Colwell, R.K., Chao, A., Gotelli, N.J., Lin, S.Y., Mao, C.X., Chazdon,
+ R.L. & Longino, J.T. (2012). Models and estimators linking
+ individual-based and sample-based rarefaction, extrapolation and
+ comparison of assemblages. \emph{J. Plant Ecol.} 5: 3--21.
Dengler, J. (2009). Which function describes the species-area
relationship best? A review and empirical evaluation.
\emph{Journal of Biogeography} 36, 728--744.
- Gotellli, N.J. & Colwell, R.K. (2001). Quantifying biodiversity:
+ Gotelli, N.J. & Colwell, R.K. (2001). Quantifying biodiversity:
procedures and pitfalls in measurement and comparison of species
richness. \emph{Ecol. Lett.} 4, 379--391.
-
- Kindt, R. (2003). Exact species richness for sample-based accumulation
- curves. \emph{Manuscript.}
-
- Kindt R., Van Damme, P. & Simons, A.J. (2006) Patterns of species
- richness at varying scales in western Kenya: planning for
- agroecosystem diversification. \emph{Biodiversity and Conservation},
- 10: 3235--3249.
-
- Ugland, K.I., Gray, J.S. & Ellingsen, K.E. (2003). The
- species-accumulation curve and estimation of species richness. \emph{Journal
- of Animal Ecology} 72: 888--897.
-
}
\author{Roeland Kindt \email{r.kindt at cgiar.org} and Jari Oksanen.}
\note{
More information about the Vegan-commits
mailing list