Phylogenetically Independent Orthonormal Contrasts
This function computes the orthonormal contrasts using the method described by Felsenstein (2008). Only a single trait can be analyzed; there can be several observations per species.
pic.ortho(x, phy, var.contrasts = FALSE, intra = FALSE)
- a numeric vector or a list of numeric vectors.
- an object of class
- logical, indicates whether the expected
variances of the contrasts should be returned (default to
- logical, whether to return the intraspecific contrasts.
x can be in two forms: a vector if there is a single
observation for each species, or a list whose elements are vectors
containing the individual observations for each species. These vectors
may be of different lengths.
x has names, its values are matched to the tip labels of
phy, otherwise its values are taken to be in the same order
than the tip labels of
- either a vector of contrasts, or a two-column matrix with the
contrasts in the first column and their expected variances in the
second column (if
var.contrasts = TRUE). If the tree has node labels, these are used as labels of the returned object.
intra = TRUE, the attribute
"intra", a list of vectors with the intraspecific contrasts or
NULLfor the species with a one observation, is attached to the returned object.
Felsenstein, J. (2008) Comparative methods with sampling error and within-species variation: Contrasts revisited and revised. American Naturalist, 171, 713--725.
tr <- rcoal(30) ### a single observation per species: x <- rTraitCont(tr) pic.ortho(x, tr) pic.ortho(x, tr, TRUE) ### different number of observations per species: x <- lapply(sample(1:5, 30, TRUE), rnorm) pic.ortho(x, tr, intra = TRUE)