Learn R Programming

zetadiv (version 1.2.0)

Zeta.decline.ex: Expectation of zeta diversity decline

Description

Computes the expectation of zeta diversity, the number of species shared by multiple assemblages for a range of orders (number of assemblages or sites), using a formula based on the occupancy of the species, and fits the decline to an exponential and a power law relationship.

Usage

Zeta.decline.ex(
  data.spec,
  orders = 1:10,
  sd.correct = TRUE,
  confint.level = 0.95,
  sd.plot = TRUE,
  rescale = FALSE,
  empty.row = "empty",
  plot = TRUE
)

Arguments

data.spec

Site-by-species presence-absence data frame, with sites as rows and species as columns.

orders

Range of number of assemblages or sites for which zeta diversity is computed.

sd.correct

Boolean value (TRUE or FALSE) indicating if the standard deviation must be computed with an unbiased estimator (using the number of site combinations - 1 as the denominator) or not (using the number of site combinations as the denominator).

confint.level

Percentage for the confidence intervals of the coefficients from the regressions.

sd.plot

Boolean value (TRUE or FALSE) indicating if the standard deviation of each zeta diversity value must be plotted.

rescale

Boolean value (TRUE or FALSE) indicating if the zeta values should be divided by \(\zeta_1\), to get a range of values between 0 and 1.

empty.row

Determines how to handle empty rows, i.e. sites with no species. Such sites can cause underestimations of zeta diversity. Options are "empty" to let the data untreated or "remove" to remove the empty rows.

plot

Boolean value (TRUE or FALSE) indicating if the outputs must be plotted.

Value

Zeta.decline.ex returns a list containing the following components:

zeta.order

The number of assemblages or sites for which the zeta diversity was computed.

combinations

The number of possible combinations of sites for the chosen orders.

zeta.val

The zeta diversity values.

zeta.val.sd

The zeta diversity standard deviation values.

zeta.ratio

The ratio of zeta diversity values by the zeta diversity values at the lower order \(\zeta_i / \zeta_{i-1}\).

zeta.exp

Object of class "lm", containing the output of the exponential regression.

zeta.exp.confint

The confidence intervals of the coefficients of the exponential regression.

zeta.pl

Object of class "lm", containing the output of the power law regression.

zeta.pl.confint

The confidence intervals of the coefficients of the power law regression.

aic

AIC values for zeta.exp and zeta.pl.

Details

Zeta.decline.ex is much faster than Zeta.decline.mc to compute the exact value of zeta diversity when the number of species is lower than \(C^N_{i}\), where N is the total number of sites and i is the order of zeta.

sd.correct should be set to TRUE if the assemblages represent a subsample of the whole system. It can be set to FALSE if the sampling is exhaustive, for example in case of a continuous regular grid covering the whole study area.

The exponential and the power law fit are performed using linear regressions on log-transformed data (only the zeta values are log-transformed for the exponential fit, and both the orders and the zeta values are log-transformed for the power law fit).

References

Hui C. & McGeoch M.A. (2014). Zeta diversity as a concept and metric that unifies incidence-based biodiversity patterns. The American Naturalist, 184, 684-694.

McGeoch M. A., Latombe G., Andrew N. R., Nakagawa S., Nipperess D. A., Roige M., Marzinelli E. M., Campbell A. H., Verges A., Thomas T., Steinberg P. D., Selwood K. E., Henriksen M. V. & Hui C. (2019). Measuring continuous compositional change using decline and decay in zeta diversity. Ecology, 100(11), e02832.

See Also

Zeta.decline.mc, Zeta.order.mc, Zeta.order.ex, Plot.zeta.decline

Examples

Run this code
# NOT RUN {
utils::data(bird.spec.coarse)
data.spec.bird <- bird.spec.coarse[,3:193]

dev.new(width = 12, height = 4)
zeta.bird <- Zeta.decline.ex(data.spec.bird, orders = 1:5)
zeta.bird

##########

utils::data(Marion.species)
xy.marion <- Marion.species[,1:2]
data.spec.marion <- Marion.species[,3:33]

dev.new(width = 12, height = 4)
zeta.marion <- Zeta.decline.ex(data.spec.marion, orders = 1:5)
zeta.marion

# }

Run the code above in your browser using DataLab