Arguments
- object
- ...
Other arguments passed to the function (currently ignored).
- type
type of prediction,
c( "response", "lc")for response (expected abundance) and constrained scores for sites.- rank
rank (number of axes to use). Default "full" for all axes (no rank-reduction).
- newdata
Data in which to look for variables with which to predict.
- weights
list of weights of species and of sites in
newdatawhentype = "response", else ignored (default NULL yielding equal species and site weights, both summing to 1). Example: weights = list(species = c(100, 1, 1), sites = c(1, 1, 1, 1)), in that order, with traits of three new species in newdata[[1]] and environmental values (and levels of factors) of four new sites in newdata[[2]]. Species weights are scaled to a sum of one.- scaling
numeric (1,2 or 3) or character
"sites", "species" or "symmetric". Default: "symmetric". Either site- (1) or species- (2) related scores are scaled by eigenvalues, and the other set of scores have unit weighted mean square or with 3 both are scaled symmetrically to weighted mean squares equal to the square root of eigenvalues. Negative values are treated as the corresponding positive ones byabs(scaling).
Value
a matrix with the predictions. The exact content of the matrix
depends on the type of predictions that are being made.
Details
Variables that are in the model but not in newdata are set to their
weighted means in the training data. Predictions are thus at the (weighted)
mean of the quantitative variables not included. Predictions with
not-included factors are at the reference level (the first level of the
factor).
In a cca0 model with type = "response",
many of the predicted values may be negative,
indicating expected absences (0) or small expected response values.
Examples
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
#>
#> Call: cca0(formula = abun ~ A1 + Moist + Mag + Use + Manure, data =
#> dune_trait_env$envir)
#>
#> Inertia Proportion Rank
#> Total 2.1866 1.0000
#> Constrained 1.2511 0.5722 7
#> Unconstrained 0.9355 0.4278 19
#>
#> Inertia is scaled Chi-square
#>
#> Eigenvalues for constrained axes:
#> CCA1 CCA2 CCA3 CCA4 CCA5 CCA6 CCA7
#> 0.4759 0.3241 0.1764 0.1313 0.0690 0.0412 0.0333
#>
#> Eigenvalues for unconstrained axes:
#> CA1 CA2 CA3 CA4 CA5 CA6 CA7 CA8
#> NA NA NA NA NA NA NA NA
#> (Showing 8 of 19 unconstrained eigenvalues)
#>
#> mean, sd, VIF and canonical coefficients with their optimistic [!] t-values:
#> Avg SDS VIF Regr1 tval1
#> A1 4.6363 1.8096 1.5022 -0.0962 -1.2237
#> Moist 2.7604 1.7163 1.7279 -0.5275 -6.2574
#> MagBF 0.1773 0.3819 4.7947 0.0107 0.0758
#> MagHF 0.3179 0.4657 2.9965 0.1034 0.9314
#> MagNM 0.2029 0.4021 7.1714 -0.1599 -0.9308
#> Use 1.9042 0.7523 1.6739 -0.1310 -1.5794
#> Manure 1.9521 1.3534 7.8029 -0.0354 -0.1975
#>
scores(mod, which_cor = c("A1", "X_lot"), display = "cor")
#> wRDA1 wRDA2
#> A1 -0.5433670 0.15530408
#> X_lot -0.1808011 -0.08064616
#> attr(,"meaning")
#> [1] "inter set correlation, correlation between environmental variables and the sites scores (CWMs)"
set.seed(123)
anova(mod)
#> $table
#> Permutation test for canonical correspondence analysis
#> Model: cca0(formula = abun ~ A1 + Moist + Mag + Use + Manure, data = dune_trait_env$envir)
#> Residualized predictor permutation
#> Permutation: free
#> Number of permutations: 999
#>
#> df ChiSquare R2 F Pr(>F)
#> cca 7 1.25113 0.57218 2.2927 0.001 ***
#> Residual 12 0.93548
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
#> $eigenvalues
#> cca1 cca2 cca3 cca4 cca5 cca6 cca7
#> 0.47593373 0.32414453 0.17637629 0.13125103 0.06899011 0.04116257 0.03326681
#>
anova(mod, by = "axis")
#> $table
#> Permutation test for canonical correspondence analysis
#> Model: cca0(formula = abun ~ A1 + Moist + Mag + Use + Manure, data = dune_trait_env$envir)
#> Residualized predictor permutation
#> Permutation: free
#> Number of permutations: 999
#>
#> df ChiSquare R2 F Pr(>F)
#> cca1 1 0.47593 0.217659 6.1051 0.002 **
#> cca2 1 0.32414 0.148241 4.1580 0.018 *
#> cca3 1 0.17638 0.080662 2.2625 0.236
#> cca4 1 0.13125 0.060025 1.6836 0.404
#> cca5 1 0.06899 0.031551 0.8850 0.951
#> cca6 1 0.04116 0.018825 0.5280 0.996
#> cca7 1 0.03327 0.015214 0.4267 0.996
#> Residual 12 0.93548
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
#> $eigenvalues
#> cca1 cca2 cca3 cca4 cca5 cca6 cca7
#> 0.47593373 0.32414453 0.17637629 0.13125103 0.06899011 0.04116257 0.03326681
#>
mod2 <- vegan::cca(abun ~ A1 + Moist + Mag + Use + Manure,
data = dune_trait_env$envir)
anova(mod2, by = "axis")
#> Permutation test for cca under reduced model
#> Forward tests for axes
#> Permutation: free
#> Number of permutations: 999
#>
#> Model: cca(formula = abun ~ A1 + Moist + Mag + Use + Manure, data = dune_trait_env$envir)
#> Df ChiSquare F Pr(>F)
#> CCA1 1 0.47593 6.1051 0.001 ***
#> CCA2 1 0.32414 4.5163 0.002 **
#> CCA3 1 0.17638 2.6289 0.080 .
#> CCA4 1 0.13125 2.0812 0.217
#> CCA5 1 0.06899 1.1811 0.765
#> CCA6 1 0.04116 0.7570 0.903
#> CCA7 1 0.03327 0.6478 0.903
#> Residual 12 0.93548
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
dat <- dune_trait_env$envir
dat$Mag <- "SF"
predict(mod, type = "lc", newdata = dat)
#> wRDA1 wRDA2 wRDA3 wRDA4 wRDA5 wRDA6
#> Site_1 0.6904890 0.2738131 0.85706483 0.21494213 0.04961136 0.72100459
#> Site_2 0.7086329 0.2734695 0.33481865 -1.07270103 -1.35928061 0.53160107
#> Site_3 0.2244798 0.5945085 0.60570803 0.44083874 0.37245365 0.46727185
#> Site_4 0.2308792 0.5789014 0.63318079 0.42798545 0.35582702 0.47363638
#> Site_5 0.7391771 0.6853586 -0.03558872 -0.62800472 -0.21511036 -0.01408255
#> Site_6 0.6574380 0.3983263 0.11503656 -0.96987465 -1.22626765 0.48068489
#> Site_7 0.5122323 0.2441261 0.29326645 -0.55866996 -1.39165267 1.01605565
#> Site_8 -1.0574335 0.8089811 0.55158630 -0.24633521 -0.86510811 0.29389272
#> Site_9 -0.1730258 0.4845439 0.99593856 -1.55170714 -1.18971277 -0.39582562
#> Site_10 0.5926090 0.2489378 0.78436035 -1.66931462 -1.40310518 -0.05383772
#> Site_11 0.5303763 0.2437824 -0.22897973 -1.84631313 -2.80054465 0.82665213
#> Site_12 -0.5486085 0.8921994 0.18514902 -0.67778374 -0.75653943 -0.08957766
#> Site_13 -0.9628957 1.0647992 0.45590655 0.06982812 0.11279594 -0.18814568
#> Site_14 -1.2893919 1.4405532 -1.34442983 -1.65724140 -2.30506793 -0.24797572
#> Site_15 -1.2204515 1.7587997 -1.55000063 -1.28966488 -1.26065740 -0.75547220
#> Site_16 -1.1534240 1.0430876 0.13949487 -0.05353574 -0.61570879 0.19842488
#> Site_17 0.5792832 0.3033908 0.42708259 -2.26814966 -2.04935800 -0.17081531
#> Site_18 0.9109057 0.3104445 0.10151139 -2.22412702 -2.02304124 -0.05073754
#> Site_19 -0.5115748 0.5163361 0.99170477 -2.20741811 -1.87890897 -0.62651646
#> Site_20 -0.4987760 0.4851219 1.04665030 -2.23312471 -1.91216221 -0.61378742
#> wRDA7
#> Site_1 -0.21001080
#> Site_2 -0.96564817
#> Site_3 -0.19205750
#> Site_4 -0.18164028
#> Site_5 -1.37467944
#> Site_6 -1.04898590
#> Site_7 -0.43402001
#> Site_8 0.11698515
#> Site_9 -0.92255561
#> Site_10 -1.22930984
#> Site_11 -1.18965737
#> Site_12 -0.68260950
#> Site_13 -0.18787396
#> Site_14 -1.43836815
#> Site_15 -1.78489613
#> Site_16 -0.03927309
#> Site_17 -1.64358878
#> Site_18 -1.88030362
#> Site_19 -1.08970250
#> Site_20 -1.06886806