Learn R Programming

⚠️There's a newer version (2.4-4) of this package.Take me there.

phytools (version 0.5-38)

Phylogenetic Tools for Comparative Biology (and Other Things)

Description

Package contains various functions for phylogenetic analysis. This functionality is concentrated in the phylogenetic analysis of comparative data from species. For example, the package includes functions for Bayesian and ML ancestral state estimation; visual simulation of trait evolution; fitting models of trait evolution with multiple Brownian rates and correlations; visualizing discrete and continuous character evolution using colors or projections into trait space; identifying the location of a change in the rate of character evolution on the tree; fast Brownian motion simulation and simulation under several other models of continuous trait evolution; fitting a model of correlated binary trait evolution; locating the position of a fossil or an recently extinct lineage on a tree using continuous character data with ML; plotting lineage accumulation through time, including across multiple trees (such as a Bayesian posterior sample); conducting an analysis called stochastic character mapping, in which character histories for a discrete trait are sampled from their posterior probability distribution under a model; conducting a multiple (i.e., partial) Mantel test; fitting a phylogenetic regression model with error in predictor and response variables; conducting a phylogenetic principal components analysis, a phylogenetic regression, a reduced major axis regression, a phylogenetic canonical correlation analysis, and a phylogenetic ANOVA; projecting a tree onto a geographic map; simulating discrete character histories on the tree; and fitting a model in which a discrete character evolves under the threshold model. In addition to this phylogenetic comparative method functionality, the package also contains functions for a wide range of other purposes in phylogenetic biology. For instance, functionality in this package includes (but is not restricted to): adding taxa to a tree (including randomly, everywhere, or automatically to genera); generating all bi- and multi-furcating trees for a set of taxa; reducing a phylogeny to its backbone tree; dropping tips or adding tips to special types of phylogenetic trees; exporting a tree as an XML file; converting a tree with a mapped character to a tree with singleton nodes and one character state per edge; estimating a phylogeny using the least squares method; simulating birth-death trees under a range of conditions; rerooting trees; a wide range of visualizations of trees; and a variety of other manipulations and analyses that phylogenetic biologists may find useful for their research.

Copy Link

Version

Install

install.packages('phytools')

Monthly Downloads

8,304

Version

0.5-38

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Maintainer

Liam Revell

Last Published

June 24th, 2016

Functions in phytools (0.5-38)

anc.trend

Ancestral character estimation with a trend
anc.ML

Ancestral character estimation using likelihood
add.random

Add tips at random to the tree
add.arrow

Add an arrow pointing to a tip or node on the tree
allFurcTrees

Generate all bi- and multifurcating unrooted trees
add.color.bar

Add color bar to a plot
add.species.to.genus

Add species to genus on a phylogeny or bind simulated species subtrees to a backbone genus tree
add.simmap.legend

Add legend to stochastically mapped tree
add.everywhere

Add tip to all edges in a tree
anc.Bayes

Bayesian ancestral character estimation
branching.diffusion

Animation of branching random diffusion
as.multiPhylo

Conversion to object of class "multiPhylo"
bmPlot

Simulates and visualizes discrete-time Brownian evolution on a phylogeny
ancThresh

Ancestral character estimation under the threshold model using Bayesian MCMC
bind.tree.simmap

Attaches a new tip to a tree
anoletree

Phylogeny of Greater Antillean anole ecomorph species with mapped discrete character
bind.tip

Attaches a new tip to a tree
applyBranchLengths

Applies the branch lengths of a reference tree to a target
ave.rates

Average the posterior rates
cophylo

Creates a co-phylogenetic plot
averageTree

Compute an average tree from a set of trees and related operations
drop.leaves

Drop all the leaves (tips) from a tree
consensus.edges

Compute consensus edges for a tree under some criterion
collapseTree

Interactive tree visualizer
fastMRCA

Get the MRCA (or height above the root of the MRCA) of a pair of tip taxa
fancyTree

Plots special types of phylogenetic trees
exhaustiveMP

Exhaustive and branch & bound MP optimization
evol.rate.mcmc

Bayesian MCMC method for identifying exceptional phenotypic diversification in a phylogeny
cladelabels

Add labels to subtrees of a plotted phylogeny
contMap

Map continuous trait evolution on the tree
export.as.xml

Export trees & data in XML format
collapse.to.star

Collapse a subtree to a star phylogeny
brownie.lite

Likelihood test for rate variation in a continuous trait
densityMap

Plot posterior density of stochastic mapping on a tree
fastAnc

Fast estimation of ML ancestral states
getCladesofSize

Get all subtrees larger than or equal to a specified size
findMRCA

Get the MRCA of a set of taxa
getExtant

Returns a list of the extant or extinct lineages in a tree containing non-contemporaneous tips
gammatest

Gamma test of Pybus & Harvey (2000)
getDescendants

Get descendant node numbers
fitBayes

Evolutionary model fitting with intraspecific variability using Bayesian MCMC
fitPagel

Function to test for correlated evolution of binary traits
countSimmap

Counts the number of character changes on a SIMMAP style tree or set of trees
brownieREML

REML version of brownie.lite
likMlambda

Likelihood for joint lambda
ltt

Creates lineage-through-time plot (including extinct lineages)
edgeProbs

Compute the relative frequencies of state changes along edges
getStates

Get the states at nodes or tips from a mapped tree
ls.tree

Least squares branch lengths for a given tree
locate.yeti

Locate a cryptic, recently extinct, or missing taxon on a tree
locate.fossil

Locate a fossil lineage in a tree using continuous characters
di2multi.simmap

Collapse branches of zero length to polytomy in stochastic map style tree
mapped.states

Returns a vector, matrix, or list of the mapped states on a tree or set of trees
densityTree

Plots a posterior sample of trees
make.simmap

Simulate stochastic character maps on a phylogenetic tree or trees
mergeMappedStates

Merge two or more mapped states into one state
estDiversity

Estimate diversity at each node of the tree
dotTree

Creates a phylogenetic dot plot
describe.simmap

Summarizes a stochastic mapped tree or set of trees
drop.clade

Drop a clade from a tree
drop.tip.contMap

Drop tip or tips from an object of class "contMap" or "densityMap"
nodelabels.cophylo

Add labels to a plotted "cophylo" object
mrp.supertree

Matrix representation parsimony supertree estimation
multiC

Returns a list with phylogenetic VCV matrix for each mapped state
minSplit

Finding the minimum (median) split in the posterior sample
multiRF

Computes Robinson-Foulds distance between a set of trees
paintSubTree

Paint sub-trees with a discrete character
multi.mantel

Multiple matrix regression (partial Mantel test)
optim.phylo.ls

Phylogeny inference using the least squares method
phyl.cca

Phylogenetic canonical correlation analysis
pgls.Ives

Phylogenetic regression with intraspecific sampling error
fastBM

Fast Brownian simulation
drop.tip.simmap

Drop tips or extract clade from tree with mapped discrete character
evol.vcv

Likelihood test for variation in the evolutionary VCV matrix
phyl.pairedttest

Phylogenetic paired t-test
phyl.RMA

Phylogenetic reduced major axis (RMA) regression
plot.backbonePhylo

Plots backbone tree with triangles as clades
phylANOVA

Phylogenetic ANOVA and post-hoc tests
expm

Matrix exponential
evolvcv.lite

Likelihood test for a shift in the evolutionary correlation between traits
phylo.toBackbone

Converts tree to backbone or vice versa
phylomorphospace

Creates phylomorphospace plot
genSeq

Simulate a DNA alignment on the tree under a model
fitDiversityModel

Fit diversity-dependent phenotypic evolution model
ladderize.simmap

Ladderize a tree with a mapped discrete character
fitMk

Fits Mk model
phylo.to.map

Plot tree with tips linked to geographic coordinates
phyloDesign

Compute design matrix for least squares analyses
phylosig

Compute phylogenetic signal with two methods
lambda.transform

Lambda transformation of matrix
plotBranchbyTrait

Plot branch colors by a quantitative trait or value
getSisters

Get the sister node number, label, or set of nodes for a node or tip
print.backbonePhylo

Print method for backbone phylogeny
ltt95

Creates a (1-$\alpha$)-percent CI for a set of LTTs
rateshift

Find the temporal position of one or more rate shifts
matchNodes

Matches nodes between two trees
plotTree

Plots rooted phylogenetic tree
posterior.evolrate

Analysis of the posterior sample from evol.rate.mcmc
make.era.map

Create "era" map on a phylogenetic tree
map.overlap

Proportional overlap between two mapped character histories on a tree
midpoint.root

Midpoint root a phylogeny
minRotate

Rotates all nodes of the tree to minimize the difference in order with a vector
map.to.singleton

Converts a mapped tree to a tree with singleton nodes
markChanges

Add marked changes to a plotted tree with mapped discrete character
orderMappedEdge

Order the columns of mapped.edge to match across trees
ratebystate

Method for investigating the rate of one trait as a function of the state of another
plotSimmap

Plot stochastic character mapped tree
plotThresh

Tree plotting with posterior probabilities of ancestral states from the threshold model
read.newick

Robust Newick style tree reader
splitplotTree

Plots a phylogeny in two columns
nodeHeights

Compute the heights above the root of each node
phyl.vcv

Compute evolutionary VCV matrix for a tree & dataset
sim.ratebystate

Conduct simulation of state dependent rate variation
paste.tree

Paste two trees together
pbtree

Simulate pure-birth or birth-death stochastic tree or trees
phenogram

Plot phenogram (traitgram)
phyl.pca

Phylogenetic principal components analysis
phylo.heatmap

Creates a phylogenetic heat map
phytools-package

phytools: Phylogenetic Tools for comparative biology (and other things)
phyl.resid

Phylogenetic size-correction via GLS regression
skewers

Matrix comparison using the method of random skewers
rstate

Pick a random state according to a vector of probabilities
setMap

Set color map for objects of class "contMap" or "densityMap"
phylomorphospace3d

Creates tree-dimensional phylomorphospace plot
sim.history

Simulate stochastic character history under some model
plotTree.wBars

Plot a tree with bars at the tips
roundPhylogram

Plot a round phylogram
read.simmap

Read SIMMAP style trees from file
untangle

Attempts to untangle crossing branches for plotting
sim.rates

Brownian simulation with multiple evolutionary rates
rescaleSimmap

Rescale SIMMAP style tree
threshDIC

Deviance Information Criterion from the threshold model
rotateNodes

Rotates a node or set of nodes in a phylogenetic tree
to.matrix

Convert a character vector to a binary matrix
treeSlice

Slices the tree at a particular point and returns all subtrees
reorderSimmap

Reorder edges of a simmap tree
roundBranches

Rounds the branch lengths of a tree
reroot

Re-root a tree along an edge
reorder.backbonePhylo

Reorders a backbone phylogeny
threshState

Computes value for a threshold character from a liability and thresholds
rerootingMethod

Get marginal ancestral state reconstructions by re-rooting
rep.phylo

Replicate a tree or set of trees
splitEdgeColor

Split edge colors when descendant edges have different mapped states
sampleFrom

Sample from a set of distributions
vcvPhylo

Calculates cophenetic (i.e., phylogenetic VCV) matrix
strahlerNumber

Computes Strahler number for trees and nodes
splitTree

Split tree at a point
threshBayes

Threshold model using Bayesian MCMC
sim.corrs

Multivariate Brownian simulation with multiple correlations and rates
starTree

Create star phylogeny
write.simmap

Write a stochastic character mapped tree to file
writeAncestors

Write a tree to file with ancestral states and (optionally) CIs at nodes
writeNexus

Write a tree to file in Nexus format