Learn R Programming

VGAM (version 0.7-1)

calibrate.qrrvglm: Calibration for CQO, UQO and CAO models

Description

Performs maximum likelihood calibration for constrained and unconstrained quadratic and additive ordination models (CQO and CAO models are better known as QRR-VGLMs and RR-VGAMs respectively).

Usage

calibrate.qrrvglm(object, newdata = NULL,
        type=c("lv","predictors","response","vcov","all3or4"),
        initial.vals = NULL, ...)

Arguments

Value

  • The argument type determines what is returned. If type="all3or4" then all the type values are returned in a list, with the following components. Each component has length nrow(newdata).
  • lvCalibrated latent variables or site scores.
  • predictorslinear/quadratic or additive predictors. For example, for Poisson families, this will be on a log scale, and for binomial families, this will be on a logit scale.
  • responseFitted values of the response, evaluated at the calibrated latent variables or site scores.
  • vcovEstimated variance-covariance matrix of the calibrated latent variables or site scores. Actually, these are stored in an array whose last dimension is nrow(newdata).

Warning

This function is computationally expensive. Setting trace=TRUE to get a running log is a good idea.

Details

Given a fitted regression CQO/CAO model, maximum likelihood calibration is theoretically easy and elegant. However, the method assumes that all species are independent, which is not really true in practice. More details and references are given in Yee (2005).

The function optim is used to search for the maximum likelihood solution. Good initial values are needed, and calibrate.qrrvglm.control allows the user some control over the choice of these.

References

Yee, T. W. (2005) On constrained and unconstrained quadratic ordination. Manuscript in preparation.

ter Braak, C. J. F. 1995. Calibration. In: Data Analysis in Community and Landscape Ecology by Jongman, R. H. G., ter Braak, C. J. F. and van Tongeren, O. F. R. (Eds.) Cambridge University Press, Cambridge.

See Also

calibrate.qrrvglm.control, calibrate, cqo, uqo, cao.

Examples

Run this code
data(hspider)
hspider[,1:6] = scale(hspider[,1:6]) # Standardize the environmental variables
set.seed(123)
p1 = cqo(cbind(Pardlugu, Pardmont, Pardnigr, Pardpull, Zoraspin) ~
         WaterCon + BareSand + FallTwig +
         CoveMoss + CoveHerb + ReflLux,
         family = poissonff, data = hspider, Rank = 1,
         IToler = TRUE, Crow1positive = TRUE)

siteNos = 1:2  # Calibrate these sites
cp1 = calibrate(p1, new=data.frame(p1@y[siteNos,]), trace=TRUE)

# Graphically compare the actual site scores with their calibrated values
persp(p1, main="Site scores: solid=actual, dashed=calibrated",
      label=TRUE, col="blue", las=1)
abline(v=lv(p1)[siteNos], lty=1, col=1:length(siteNos)) # actual site scores
abline(v=cp1, lty=2, col=1:length(siteNos)) # calibrated values

Run the code above in your browser using DataLab