From Comparative Phylogenetics in R
Jump to: navigation, search

Packages and Analyses available in R

The history of life unfolds within a phylogenetic context. Comparative phylogenetic methods are statistical approaches for analyzing historical patterns along phylogenetic trees. This task view describes R packages that implement a variety of different comparative phylogenetic methods. This is an active research area and much of the information is subject to change.

Ancestral state reconstruction : Continuous characters can be reconstructed using maximum likelihood, generalised least squares or independent contrasts in ape . Root ancestral character states under Brownian motion or Ornstein-Uhlenbeck models can be reconstructed in OUCH , though ancestral states at the internal nodes are not. Discrete characters can be reconstructed using a variety of Markovian models that parameterize the transition rates among states using ape .

Diversification Analysis: Lineage through time plots can be done in ape and laser . A simple birth-death model for when you have extant species only (sensu Nee et al. 1994) can be fitted in ape as can survival models and goodness-of-fit tests (as applied to testing of models of diversification). Laser implements likelihood methods using a model testing approach for inferring temporal shifts in diversification rates based on a birth-death or pure-birth process. The gamma statistic (Pybus and Harvey 2000) is also available in laser. Colless and Sackin's topological methods for analyzing diversification are available in apTreeshape as is the test for significant shifts in diversification (sensu Moore, Chan and Donoghue 2004). Net rates of diversification (sensu Magellon and Sanderson) can be calculated in geiger .

Divergence Times: Non-parametric rate smoothing (NPRS) and penalized likelihood can be implemented in ape .

Phylogenetic Inference: Maximum likelihood, UPGMA, neighbour joining, bio-nj and fast ME methods of phylogenetic reconstruction are all implemented in the package ape . For more information on importing sequence data, see the Genetics task view.

Time series: Paleontological time series data can be analyzed using a likelihood-based framework for fitting and comparing models (using a model testing approach) of phyletic evolution (based on the random walk or stasis model) using paleoTS.

Tree Simulations: Trees can be simulated using a Yule, PDA, biased or speciation specified model in apTreeshape, a birth-death process in geiger , and PhySim . Random trees can be generated in ape by random splitting of edges (for non-parametric trees) or random clustering of tips (for coalescent trees).

Trait evolution: Independent contrasts for continuous characters can be calculated using ape. Pagel's continuous and discrete analyzes can be calculated in geiger . Ornstein-Uhlenbeck (OU) models can be fitted in geiger, ape and OUCH. In its current implementation, geiger fits only single-optimum models. ANOVA's and MANOVA's in a phylogenetic context can also be implemented in geiger. A GLS linear model (sensu Garland and Ives 2000) can be fitted using PHYLOGR; the more traditional GLS methods (senu Grafen or Martins) can be implemented in ape. Phylogenetic autoregression (sensu Cheverud et al) and Phylogenetic autocorrelation (Moran's I) can be implemented in ape or--if you wish the significance test of Moran's I to be calculated via a randomization procedure--in ade4 .

Trait Simulations : Continuous traits can be simulated using brownian motion in OUCH and geiger , the Hansen model in OUCH and a speciational model in geiger . Discrete traits can be simulated using a continuous time Markov model in geiger . Both discrete and continuous traits can be simulated under models where rates change through time in geiger .

Tree Manipulation : Branch length scaling using ACDC; Pagel's (1999) lambda, delta and kappa parameters; and the Ornstein-Uhlenbeck alpha parameter (for ultrametric trees only) are available in geiger . Rooting, resolving polytomies, dropping of tips, setting of branch lengths including Grafen's method can all be done using ape . Trees can be pruned from specified nodes using apTreeshape and extinct taxa can be pruned using geiger .

Tree Plotting and Visualization: User inputted trees can be plotted using ape , ade4 and OUCH . Trees can also be examined (zoomed) and viewed as correlograms using ape. Ancestral state reconstructions can be visualized along branches using ape .

CRAN packages


  1. Butler MA, King AA 2004 Phylogenetic comparative analysis: A modeling approach for adaptive evolution. American Naturalist 164, 683-695.
  2. Cheverud JM, Dow MM, Leutenegger W 1985 The quantitative assessment of phylogenetic constraints in comparative analyses: Sexual dimorphism in body weight among primates. Evolution 39, 1335-1351.
  3. Garland T, Harvey PH, Ives AR 1992 Procedures for the analysis of comparative data using phylogenetically independent contrasts. Systematic Biology 41, 18-32.
  4. Hansen TF 1997. Stabilizing selection and the comparative analysis of adaptation. Evolution 51: 1341-1351.
  5. Magallon S, Sanderson, M.J. 2001. Absolute Diversification Rates in Angiosperm Clades. Evolution 55(9):1762-1780.
  6. Moore, BR, Chan, KMA, Donoghue, MJ (2004) Detecting diversification rate variation in supertrees. In Bininda-Emonds ORP (ed) Phylogenetic Supertrees: Combining Information to Reveal the Tree of Life, Kluwer Academic pgs 487-533.
  7. Nee S, May RM, Harvey PH 1994. The reconstructed evolutionary process. Philosophical Transactions of the Royal Society of London Series B Biological Sciences 344: 305-311.
  8. Pagel M 1999 Inferring the historical patterns of biological evolution. Nature 401, 877-884
  9. Pybus OG, Harvey PH 2000. Testing macro-evolutionary models using incomplete molecular phylogenies. Proceedings of the Royal Society of London Series B Biological Sciences 267, 2267-2272.