Learn R Programming

vegan (version 2.0-10)

add1.cca: Add or Drop Single Terms to a Constrained Ordination Model

Description

Compute all single terms that can be added to or dropped from a constrained ordination model.

Usage

## S3 method for class 'cca':
add1(object, scope, test = c("none", "permutation"),
    pstep = 100, perm.max = 200, ...)
## S3 method for class 'cca':
drop1(object, scope, test = c("none", "permutation"), 
    pstep = 100, perm.max = 200, ...)

Arguments

object
A constrained ordination object from cca, rda or capscale.
scope
A formula giving the terms to be considered for adding or dropping; see add1 for details.
test
Should a permutation test be added using anova.cca.
pstep
Number of permutations in one step, passed as argument step to anova.cca.
perm.max
Maximum number of permutation in anova.cca.
...
Other arguments passed to add1.default, drop1.default, and anova.cca.

Value

Details

With argument test = "none" the functions will only call add1.default or drop1.default. With argument test = "permutation" the functions will add test results from anova.cca. Function drop1.cca will call anova.cca with argument by = "margin". Function add1.cca will implement a test for single term additions that is not directly available in anova.cca.

Functions are used implicitly in step, ordiR2step and ordistep. The deviance.cca and deviance.rda used in step have no firm basis, and setting argument test = "permutation" may help in getting useful insight into validity of model building. Function ordistep calls alternately drop1.cca and add1.cca with argument test = "permutation" and selects variables by their permutation $P$-values. Meticulous use of add1.cca and drop1.cca will allow more judicious model building.

The default perm.max is set to a low value, because permutation tests can take a long time. It should be sufficient to give a impression on the significances of the terms, but higher values of perm.max should be used if $P$ values really are important.

See Also

add1, drop1 and anova.cca for basic methods. You probably need these functions with step and ordistep. Functions deviance.cca and extractAIC.cca are used to produce the other arguments than test results in the output. Functions cca, rda and capscale produce result objects for these functions.

Examples

Run this code
data(dune)
data(dune.env)
## Automatic model building based on AIC but with permutation tests
step(cca(dune ~  1, dune.env), reformulate(names(dune.env)), test="perm")
## see ?ordistep to do the same, but based on permutation P-values
ordistep(cca(dune ~  1, dune.env), reformulate(names(dune.env)), perm.max=200)
## Manual model building
## -- define the maximal model for scope
mbig <- rda(dune ~  ., dune.env)
## -- define an empty model to start with
m0 <- rda(dune ~ 1, dune.env)
## -- manual selection and updating
add1(m0, scope=formula(mbig), test="perm")
m0 <- update(m0, . ~ . + Management)
add1(m0, scope=formula(mbig), test="perm")
m0 <- update(m0, . ~ . + Moisture)
## -- included variables still significant?
drop1(m0, test="perm")
add1(m0, scope=formula(mbig), test="perm")

Run the code above in your browser using DataLab