Learn R Programming

phytools (version 0.7-70)

phyl.pca: Phylogenetic principal components analysis

Description

This function performs phylogenetic PCA (e.g., Revell 2009; Evolution).

Usage

phyl.pca(tree, Y, method="BM", mode="cov", ...)
# S3 method for phyl.pca
biplot(x, ...)
scores(object, ...)
# S3 method for phyl.pca
scores(object, ...)

Arguments

tree

phylogeny as an object of class "phylo".

Y

data matrix with traits in columns.

method

method to obtain the correlation structure: can be "BM" or "lambda".

mode

is the mode for the PCA: can be "cov" or "corr".

x

object of class "phyl.pca" for biplot method.

object

object of class "phyl.pca" for scores method.

...

for S3 plotting method biplot.phyl.pca, other arguments to be passed to biplot.

Value

An object of class "phyl.pca" consisting of a list with some or all of the following components:

Eval

diagonal matrix of eigenvalues.

Evec

matrix with eigenvectors in columns.

S

matrix with scores.

L

matrix with loadings.

lambda

fitted value of \(\lambda\) (method="lambda" only).

logL

log-likelihood for \(\lambda\) model (method="logL" only).

Details

If method="lambda" then \(\lambda\) will be optimized on the interval (0,1) using optimize. Optimization method can be set using the option opt which can take values "ML", "REML", or "fixed". If the last of these is selected than the user should also specify a value of \(\lambda\) to use via the argument lambda.

S3 methods (print, summary, and biplot) are modified from code provided by Joan Maspons and are based on the same methods for objects of class "prcomp". Function biplot now permits the argument choices to be supplied, which should be a vector of length two indicated the two PC axes to be plotted.

S3 method scores extracts or computes (for a matrix of newdata) PC scores given an object of class "phyl.pca".

References

Revell, L. J. (2009) Size-correction and principal components for interspecific comparative studies. Evolution, 63, 3258-3268.

Revell, L. J. (2012) phytools: An R package for phylogenetic comparative biology (and other things). Methods Ecol. Evol., 3, 217-223.

See Also

phyl.cca, phyl.resid

Examples

Run this code
# NOT RUN {
## load data from Mahler et al. (2010)
data(anoletree)
data(anole.data)
## run phylogenetic PCA
anole.pca<-phyl.pca(anoletree,anole.data)
print(anole.pca)
## plot results
plot(anole.pca)
biplot(anole.pca)
# }

Run the code above in your browser using DataLab