Learn R Programming

douconca (version 1.2.3)

cca0: Performs a canonical correspondence analysis

Description

cca0 is formula-based implementation of canonical correspondence analysis.

Usage

cca0(
  formula,
  response = NULL,
  data,
  traceonly = FALSE,
  cca_object = NULL,
  object4QR = NULL
)

Value

All scores in the cca0 object are in scaling "sites" (1): the scaling with Focus on Case distances.

The returned object has class c("cca0" "wrda") so that the methods print, predict and scores

can use the wrda variant.

Arguments

formula

one or two-sided formula for the rows (samples) with row predictors in data. The left hand side of the formula is ignored if it is specified in the next argument (response). Specify row covariates (if any ) by adding + Condition(covariate-formula) to formula as in rda. The covariate-formula should not contain a ~ (tilde).

response

matrix or data frame of the abundance data (dimension n x m). Rownames of response, if any, are carried through. BEWARE: all rows and columns should have positive sums! Can be NULL if cca_object is supplied or if the response is formula is two-sided.

data

matrix or data frame of the row predictors, with rows corresponding to those in response (dimension n x p).

traceonly

logical, default FALSE. If TRUE, only the explained variance of the predictors and the Condition() are returned, i.e without performing a singular value decompostion.

cca_object

a vegan-type cca-object of transposed response, from which chisq_residuals and row and column weights can be obtained.

object4QR

a vegan-type cca-object with weighted QR's for formula, i.e. qr(Z) and qr(XZ) obtainable via get_QR(object4QR, model = "pCCA") and get_QR(object4QR, model = "CCA"), respectively.

Details

The algorithm is a wrda on the abundance data after transformation to chi-square residuals.

It is much slower than cca. The only reason to use it, is that anova.cca0 does residualized predictor permutation. It is unknown to the authors of douconca which method anova.cca implements. See anova.cca0.

Compared to cca, cca0 does not have residual axes, i.e. no CA of the residuals is performed.

References

ter Braak C.J.F. and P. Šmilauer (2018). Canoco reference manual and user's guide: software for ordination (version 5.1x). Microcomputer Power, Ithaca, USA, 536 pp.

Oksanen, J., et al. (2022) vegan: Community Ecology Package. R package version 2.6-8. https://CRAN.R-project.org/package=vegan.

See Also

scores.wrda, anova.cca0, print.wrda and predict.wrda

Examples

Run this code
data("dune_trait_env")

# rownames are carried forward in results
rownames(dune_trait_env$comm) <- dune_trait_env$comm$Sites
abun <- dune_trait_env$comm[, -1]  # must delete "Sites"

mod <- cca0(formula = abun ~ A1 + Moist + Mag + Use + Manure,
            data = dune_trait_env$envir)

mod # Proportions equal to those Canoco 5.15

scores(mod, which_cor = c("A1", "X_lot"), display = "cor")

set.seed(123)
anova(mod)
anova(mod, by = "axis")

mod2 <- vegan::cca(abun ~ A1 + Moist + Mag + Use + Manure,
                   data = dune_trait_env$envir)
anova(mod2, by = "axis")

dat <- dune_trait_env$envir
dat$Mag <- "SF"
predict(mod, type = "lc", newdata = dat)

Run the code above in your browser using DataLab