| multipart {vegan} | R Documentation |
In multiplicative diversity partitioning, mean values of alpha diversity at lower levels of a sampling hierarchy are compared to the total diversity in the entire data set or the pooled samples (gamma diversity).
multipart(formula, data, index=c("renyi", "tsallis"), scales = 1,
global = FALSE, relative = FALSE, nsimul=99, ...)
## S3 method for class 'multipart':
print(x, ...)
formula |
A two sided model formula in the form y ~ x, where y
is the community data matrix with samples as rows and species as column. Right
hand side (x) must contain factors referring to levels of sampling hierarchy,
terms from right to left will be treated as nested (first column is the lowest,
last is the highest level). These variables must be factors in order to unambiguous
handling. Interaction terms are not allowed. |
data |
A data frame where to look for variables defined in the right hand side
of formula. If missing, variables are looked in the global environment. |
index |
Character, the entropy index to be calculated (see Details). |
relative |
Logical, if TRUE then beta diversity is
standardized by its maximum (see Details). |
scales |
Numeric, of length 1, the order of the generalized diversity index to be used. |
global |
Logical, indicates the calculation of beta diversity values, see Details. |
nsimul |
Number of permutation to use if matr is not of class 'permat'.
If nsimul = 0, only the FUN argument is evaluated. It is thus possible
to reuse the statistic values without using a null model. |
x |
An object to print. |
... |
Other arguments passed to oecosimu, i.e.
method, thin or burnin. |
Multiplicative diversity partitioning is based on Whittaker's (1972) ideas, that has recently been generalised to one parametric diversity families (i.e. R'enyi and Tsallis) by Jost (2006, 2007). Jost recommends to use the numbers equivalents (Hill numbers), instead of pure diversities, and proofs, that this satisfies the multiplicative partitioning requirements.
The current implementation of multipart calculates Hill numbers based on the
functions renyi and tsallis (provided as index argument).
If values for more than one scales are desired, it should be done in separate
runs, because it adds extra dimensionality to the implementation, which has not been resolved
efficiently.
Alpha diversities are then the averages of these Hill numbers for each hierarchy levels,
the global gamma diversity is the alpha value calculated for the highest hierarchy level.
When global = TRUE, beta is calculated relative to the global gamma value:
beta_i = gamma / alpha_i
when global = FALSE, beta is calculated relative to local gamma values (local gamma
means the diversity calculated for a particular cluster based on the pooled abundance vector):
beta_ij = alpha_(i+1)j / mean(alpha_i)
where j is a particular cluster at hierarchy level i. Then beta diversity value for level i is the mean of the beta values of the clusters at that level, β_{i} = mean(β_{ij}).
If relative = TRUE, the respective beta diversity values are
standardized by their maximum expected values (mean(β_{ij}) / β_{max,ij})
given as β_{max,ij} = n_{j} (the number of lower level units in a given cluster j).
The expected diversity components are calculated nsimul times by individual based
randomisation of the community data matrix. This is done by the "r2dtable" method
in oecosimu by default.
An object of class 'multipart' with same structure as 'oecosimu' objects.
P'eter S'olymos, solymos@ualberta.ca
Jost, L. (2006). Entropy and diversity. Oikos, 113, 363–375.
Jost, L. (2007). Partitioning diversity into independent alpha and beta components. Ecology, 88, 2427–2439.
Whittaker, R. (1972). Evolution and measurement of species diversity. Taxon, 21, 213–251.
See adipart for additive diversity partitioning,
hiersimu for hierarchical null model testing
and oecosimu for permutation settings and calculating p-values.
data(mite)
data(mite.xy)
data(mite.env)
## Function to get equal area partitions of the mite data
cutter <- function (x, cut = seq(0, 10, by = 2.5)) {
out <- rep(1, length(x))
for (i in 2:(length(cut) - 1))
out[which(x > cut[i] & x <= cut[(i + 1)])] <- i
return(as.factor(out))}
## The hierarchy of sample aggregation
levsm <- data.frame(
l1=as.factor(1:nrow(mite)),
l2=cutter(mite.xy$y, cut = seq(0, 10, by = 2.5)),
l3=cutter(mite.xy$y, cut = seq(0, 10, by = 5)),
l4=cutter(mite.xy$y, cut = seq(0, 10, by = 10)))
## Multiplicative diversity partitioning
multipart(mite ~ ., levsm, index="renyi", scales=1, nsimul=25)
multipart(mite ~ ., levsm, index="renyi", scales=1, nsimul=25, relative=TRUE)
multipart(mite ~ ., levsm, index="renyi", scales=1, nsimul=25, global=TRUE)