The function performs an ANOVA like permutation test for Constrained
Correspondence Analysis (
cca), Redundancy Analysis
rda) or distance-based Redundancy Analysis
capscale) to assess the significance of constraints.
1 2 3 4 5 6 7 8 9 10
A result object from
Targeted Type I error rate.
Accepted Type II error rate.
Number of permutations during one step.
Maximum number of permutations.
Parameters passed to other functions.
Number of permutations for assessing significance of constraints.
Permutation model (partial match).
Assess only the significance of the first constrained
eigenvalue; will be passed from
An integer vector or factor specifying the strata for permutation. If supplied, observations are permuted only within the specified strata.
permutest.cca implement an ANOVA
like permutation test for the joint effect of constraints in
permutest.cca differ in printout
style and in interface.
permutest.cca is the proper workhorse, but
anova.cca passes all parameters to
The default test is for the sum of all constrained eigenvalues.
first = TRUE will perform a test for the first
constrained eigenvalue. Argument
first can be set either in
anova.cca or in
permutest.cca. It is also possible to
perform significance tests for each axis or for each term
(constraining variable) using argument
by = "axis" will perform separate
significance tests for each constrained axis. All previous
constrained axes will be used as conditions (“partialled
out”) and a test for the first constrained eigenvalues is
performed (Legendre et al. 2011).
You can stop permutation tests after exceeding a given
significance level with argument
cutoff to speed up
calculations in large models. Setting
by = "terms" will
perform separate significance test for each term (constraining
variable). The terms are assessed sequentially from first to last,
and the order of the terms will influence their
by = "margin" will perform separate
significance test for each marginal term in a model with all other
terms. The marginal test also accepts a
scope argument for
drop.scope which can be a character vector of term
labels that are analysed, or a fitted model of lower scope. The
marginal effects are also known as “Type III” effects, but
the current function only evaluates marginal terms. It will, for
instance, ignore main effects that are included in interaction
terms. In calculating pseudo-F, all terms are compared to the
same residual of the full model. Permutations for all axes or terms
will start from the same
.Random.seed, and the seed
will be advanced to the value after the longest permutation at the
exit from the function.
anova.cca the number of permutations is controlled by
targeted “critical” P value (
alpha) and accepted
Type II or rejection error (
beta). If the results of
permutations differ from the targeted
alpha at risk level given
beta, the permutations are terminated. If the current
estimate of P does not differ significantly from
the alternative hypothesis, the permutations are continued with
step new permutations (at the first step, the number of
step - 1). However, with
fixed number of permutations will be used, and this is given by
permutations, or if this is missing, by
Community data are permuted with choice
residuals after partial CCA/ RDA/ dbRDA with choice
(default), and residuals after CCA/ RDA/ dbRDA under choice
model="full". If there is no partial CCA/ RDA/ dbRDA stage,
model="reduced" simply permutes the data and is equivalent to
model="direct". The test statistic is “pseudo-F”,
which is the ratio of constrained and unconstrained total Inertia
(Chi-squares, variances or something similar), each divided by their
respective ranks. If there are no conditions (“partial”
terms), the sum of all eigenvalues remains constant, so that
pseudo-F and eigenvalues would give equal results. In partial
CCA/ RDA/ dbRDA, the effect of conditioning variables
(“covariables”) is removed before permutation, and these
residuals are added to the non-permuted fitted values of partial CCA
(fitted values of
X ~ Z). Consequently, the total Chi-square
is not fixed, and test based on pseudo-F would differ from the
test based on plain eigenvalues. CCA is a weighted method, and
environmental data are re-weighted at each permutation step using
permutest.cca returns an object of class
"permutest.cca", which has its own
density.permutest.cca function. The function
permutest.cca and fills an
Some cases of
anova need access to the original data on
constraints (at least
by = "term" and
by = "margin"),
and they may fail if data are unavailable.
The default permutation
model changed from
"reduced" in vegan version 1.15-0, and you must
model = "direct" for compatibility with the old
by = "terms" and
by = "margin" are consistent
model = "direct".
Legendre, P. and Legendre, L. (2012). Numerical Ecology. 3rd English ed. Elsevier.
Legendre, P., Oksanen, J. and ter Braak, C.J.F. (2011). Testing the significance of canonical axes in redundancy analysis. Methods in Ecology and Evolution 2, 269–277.
to get something to analyse. Function
by = "margin", and
add1.cca an analysis for single terms additions, which
can be used in automatic or semiautomatic model building (see
1 2 3 4 5 6 7 8 9 10 11 12 13
data(varespec) data(varechem) vare.cca <- cca(varespec ~ Al + P + K, varechem) ## overall test anova(vare.cca) ## Test for axes anova(vare.cca, by="axis", perm.max=500) ## Sequential test for terms anova(vare.cca, by="terms", permu=200) ## Marginal or Type III effects anova(vare.cca, by="margin") ## Marginal test knows 'scope' anova(vare.cca, by = "m", scope="P")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.