CRAN Task View: Phylogenetics
|Maintainer:||William Gearty, Brian O'Meara, Jacob Berv, Gustavo A. Ballen, Diniz Ferreira, Hilmar Lapp, Lars Schmitz, Martin R. Smith, Nathan S. Upham, Jonathan A. Nations|
|Contact:||willgearty at gmail.com|
|Contributions:||Suggestions and improvements for this task view are very welcome and can be made through issues or pull requests on GitHub or via e-mail to the maintainer address. For further details see the Contributing guide.|
|Citation:||William Gearty, Brian O'Meara, Jacob Berv, Gustavo A. Ballen, Diniz Ferreira, Hilmar Lapp, Lars Schmitz, Martin R. Smith, Nathan S. Upham, Jonathan A. Nations (2022). CRAN Task View: Phylogenetics. Version 2022-12-20. URL https://CRAN.R-project.org/view=Phylogenetics.|
|Installation:||The packages from this task view can be installed automatically using the ctv package. For example, |
ctv::install.views("Phylogenetics", coreOnly = TRUE) installs all the core packages or
ctv::update.views("Phylogenetics") installs all packages that are not yet installed and up-to-date. See the CRAN Task View Initiative for more details.
The history of life unfolds within a phylogenetic context, and phylogenetic trees (often shortened to “trees”) are developed to represent this evolutionary history. Comparative phylogenetic methods are statistical approaches for analyzing historical patterns along such phylogenetic trees. This task view describes R packages that (i) facilitate the handling, manipulation and analysis of phylogenetic trees; (ii) implement comparative phylogenetic methods; (iii) apply phylogenetic methods to specific disciplines. This is an active research area and much of the information is subject to change. Many important packages are not on CRAN: either they were formerly on CRAN and were later archived (for example, if they failed to incorporate necessary changes as R is updated) or they are developed elsewhere and are not yet available on CRAN. Such packages may be found on GitHub, R-Forge, Bioconductor, or authors’ websites. At least ten packages start as phy* in this domain, including two pairs of similarly named packages (phytools and phylotools, phylobase and phybase); users are encouraged to read and distinguish carefully between package names.
If you have any questions, feel free to reach out to the task view maintainers or the maintainers of specific packages. Questions may also be directed to the R-SIG-Phylo mailing-list after subscription.
ape implements the S3 phylo class which is commonly used to store phylogenetic trees in R. It is commonly used for reading, writing, and visualizing trees in the Newick/Phylip and NEXUS formats. It also has many functions for manipulating trees (e.g., rooting trees, dropping tips, randomly resolving polytomies), inferring trees (e.g., neighbour joining, bio-nj, and fast ME methods), and performing phylogenetic comparative analyses (e.g., reconstructing discrete and continuous characters, fitting basic models of trait evolution and diversification). It can also be used to generate random trees, pull in data from GenBank, and create lineage through time and correlogram plots.
phylobase implements the S4 phylo4 class which combines phylogenetic trees and comparative data. While not used as commonly as the S3 phylo class, this new class is gaining traction among newer packages that implement phylogenetic comparative methods (e.g., adephylo and phylosignal).
geiger implements a large suite of model fitting approaches for analyses of trait evolution and diversification. It is most commonly used to fit and compare various models of discrete and continuous trait evolution (e.g., Brownian motion, Ornstein-Uhlenbeck, Pagel’s transforms, and models with trends). It also is commonly used to simulate phylogenies and the evolution of discrete and continuous characters. It also has several auxiliary functions that are often used by other packages.
phytools has a constantly increasing range of functions for performing phylogenetic comparative analyses and visualizing (e.g., projecting into a morphospace), manipulating (e.g., branch length scaling and transformations, adding tips, finding subtrees), reading or writing, and even inferring phylogenetic trees and comparative data.
Packages within the task view fall within one or more of the following task categories:
- Working with trees in R: packages dedicated to the handling, manipulation, and visualization of phylogenetic data
- Building trees in R: packages for phylogenetic inference and tree simulation
- Comparative phylogenetic methods: packages for performing various comparative phylogenetic methods, including those dealing with trait evolution and diversification
- Phylogenetics in other fields: packages designed to perform field-specific phylogenetic analyses, including paleontology, community ecology, biogeography, and genetics
- Other useful packages and miscellany: packages that are useful for performing phylogenetic analyses, such as taxonomic matching
Working with trees in R
Getting trees into R
- phylobase and its lighter weight sibling rncl can use the Nexus Class Library to read NEXUS, Newick, and other tree formats.
- treebase can search for and load trees from the online tree repository TreeBASE.
- RNeXML can read, write, and process metadata for the NeXML format.
- TreeTools can read trees from external files in TNT format and NEXUS format, including extensions to the Nexus format not supported by ape, and metadata from MorphoBank.
- ips can load trees from BEAST, MrBayes, and other phylogenetics programs. This package can be used to parse the node support and other values from BEAST or MrBayes output.
- phylotate can read and write ape-compatible phylogenetic trees in NEXUS and Newick formats, while preserving annotations.
- phyext2 can read and write various tree formats, including simmap formats.
- rotl can pull in a synthetic tree and individual study trees from the Open Tree of Life project.
- The treeio package can read trees in Newick, Nexus, New Hampshire eXtended format (NHX), jplace and Phylip formats and data output from BEAST, EPA, HyPhy, MrBayes, PAML, PHYLDOG, pplacer, r8s, RAxML and RevBayes.
- brranching (archived) can fetch phylogenies from online repositories, including phylomatic.
- phylogram can convert Newick files into dendrogram objects.
- dendextend can manipulate such dendrogram objects.
- phytools can read and write trees in simple Newick and Nexus format, as well as
"simmap" trees with an encoded discrete character.
- phylobase has functions for traversing a tree (e.g., getting all descendants from a particular node specified by just two of its descendants).
- geiger can prune trees and data to an overlapping set of taxa. It can be also used to perform branch length scaling using ACDC; Pagel’s (1999) lambda, delta and kappa parameters; and the Ornstein-Uhlenbeck alpha parameter (for ultrametric trees only). It can also be used to prune extinct taxa.
- TreeTools has functions to quantify and manipulate tree shape and balance, including the application of constraints; and to measure the phylogenetic information content of trees.
- Rogue identifies wildcard taxa, generating more informative summary trees.
- tidytree can convert a tree object to a tidy data frame and has other tidy approaches to manipulate tree data.
- evobiR can do fuzzy matching of names (to allow some differences).
- SigTree finds branches that are responsive to some treatment, while allowing correction for multiple comparisons.
- dendextend can manipulate dendrograms, including subdividing trees, adding leaves, and more.
- apex can handle multiple gene DNA alignments making their use and analysis for tree inference easier in ape and phangorn.
- aphid can weight sequences based on a phylogeny and can use hidden Markov models (HMMs) for a variety of purposes including multiple sequence alignment.
- phangorn and TreeSearch can perform tree rearrangements (NNI, SPR, and TBR).
- paleotree has functions for manipulating trees based on sampling issues that arise with fossil taxa as well as more universal transformations.
- dendextend can manipulate dendrograms, including subdividing trees, adding leaves, and more.
- castor can be used to manipulate extremely large trees (up to millions of tips).
- phytools can slice a tree at a pre-specified point, add taxa randomly to a tree, add species to genera, bind a single tip to a tree or two trees together, collapse clades on a tree using a clickable interface, perform midpoint rooting, paint a user-specified discrete character regime onto a tree to create a
"simmap" object by various methods, convert a tree with a mapped character into a simple
"phylo" object with unbranching nodes or a root edge into a single unbranching node, and other things.
- ape, adephylo, phylobase, phytools, ouch, and dendextend have functions for plotting trees; several of these have options for branch or taxon coloring based on some criterion (ancestral state, tree structure, etc.). In addition, phytools has substantial functionality to plot comparative data at the tips of the tree, graph the results of comparative analyses, and plot co-phylogenies.
- paleoPhylo and paleotree are specialized for drawing paleobiological phylogenies.
- viper can be used to annotate phylogenies with branch support, HPD intervals, and more.
- The popular R visualization package ggplot2 can be extended by ggtree and ggtreeExtra to visualize phylogenies, and a geological timescale can be added using deeptime.
- strap can be used to add a geological timescale to a phylogeny, along with stratigraphic ranges.
- idendr0 can be used to interactively explore trees (as dendrograms).
- ggmuller allows plotting a phylogeny along with frequency dynamics.
- RPANDA can be used to plot the spectral density and eigenvalues of a phylogeny.
- diversitree has an unexported function called “plot2.phylo()” which allows for the production of very lightweight PDF outputs of speciose trees (can be called via
Tree building in R
- phangorn can estimate trees using distance (e.g. UPGMA), parsimony, and likelihood.
- TreeSearch can identify most-parsimonious trees under parsimony, using the Brazeau et al. (2019) correction for inapplicable data, and includes a graphical user interface for detailed analysis of results.
- phyclust can cluster sequences.
- phytools can build trees using MRP supertree estimation and least squares.
- phylotools can build supermatrices for analyses in other software.
- EvoPhylo can be used to perform automated morphological character partitioning for bayesian phylogenetic analyses that are performed with MrBayes and BEAST2. It can also be used to analyze the macroevolutionary parameter outputs from such analyses.
- fastreeR can be used to calculate distances, build phylogenetic trees, or perform hierarchical clustering between the samples of a VCF or FASTA file.
- rphenoscate facilitates analysis of “inapplicable” characters – such as morphological characters that are dependent on a parent trait – by constructing formal character hierarchies and the corresponding rate matrices (Tarasov 2023).
- ape implements non-parametric rate smoothing (NPRS) and penalized likelihood.
- geiger can do congruification to stretch a source tree to match a specified standard tree.
- cladedate generates empirical calibration information from the fossil record.
- treedater implements various clock models, ways to assess confidence, and detecting outliers.
- phangorn can infer ultrametric and tipdated phylogenies with a strict clock model direct from sequences.
- bppr calibrates phylogenies from the program BPP. A tutorial is available at https://dosreislab.github.io/2018/08/31/bppr.html
- mcmc3r calculates the marginal likelihood in divergence time estimation using MCMCtree from the suite PAML. It also calculates the block bootstrap for error estimation in marginal likelihood calculation.
- TreeSim can be used to simulate trees using constant-rate birth-death with various constraints.
- phytools can simulate birth-death trees with various constraints, in both continuous and discrete time.
- geiger can be used to simulate trees under a birth-death process.
- paleotree can simulate fossil deposition, sampling, and the tree arising from this as well as trees conditioned on observed fossil taxa.
- FossilSim can be used to simulate fossil data on existing phylogenetic trees under mechanistic models of preservation and sampling.
- TESS can simulate trees with time-dependent speciation and/or extinction rates, including mass extinctions.
- paleobuddy presents a flexible interface to simulate a wide array of user-defined diversification dynamics, including environmental-dependence.
- simclock simulates trees with branch lengths in number of substitutions per site under the relaxed clock models geometric Brownian motion (correlated rates) as well as independent lognormal rates.
Phylogenetic comparative methods
Ancestral state reconstruction
- ouch can be used to reconstruct root ancestral character states under Brownian motion or Ornstein-Uhlenbeck models, though ancestral states at the internal nodes are not.
- markophylo can fit a broad set of discrete character types with models that can incorporate constrained substitution rates, rate partitioning across sites, branch-specific rates, sampling bias, and non-stationary root probabilities.
- phytools can do ancestral character estimation for continuous and discrete characters under multiple models, including the threshold model from evolutionary quantitative genetics, as well as stochastic character mapping.
- Rphylopars can perform ancestral state reconstruction for datasets with multiple observations per species and/or missing data.
- TreeSearch can perform mapping of characters under parsimony, with an allowance for inapplicable data.
- castor can be used reconstruct continuous or discrete characters on extremely large trees.
- ape, picante, or caper can be used to calculate independent contrasts for continuous characters. caper also implements the brunch and crunch algorithms.
- geiger can be used to perform analyses of discrete trait evolution, including models of unequal rates or rates changing at a given instant of time, as well as Pagel’s transformations.
- phytools can be used to fit multiple models for both discrete and continuous character evolution. For instance, phytools fits a Brownian model with and without rate heterogeneity specified as regimes fixed by the user or estimated from the data itself. phytools can also be used to fit a range of discrete character evolution models, such as the the extended Mk model, a heterogenous Mk model with regime shifts, a polymorphic trait evolution model, a hidden-rates model, the threshold model, and others.
- geiger, paleotree, and motmot can be used to fit Brownian motion models.
- RBrownie can fit multiple-rate Brownian motion models.
- geiger and OUwie can be used to investigate deviations from Brownian motion.
- mvMORPH can fit Brownian motion, early burst, ACDC, OU, and shift models to univariate or multivariate data.
- geiger, motmot, ouch, surface, and OUwie can be used to fit Ornstein-Uhlenbeck (OU) models. ouch can implement models with multiple means, surface can implement models with multiple means using stepwise AIC, and OUwie can implement models with multiple means, rates, and attraction values. Also see extendedSurface which combines the functionality of surface and OUwie.
- motmot can be used to fit continuous models that change rate or mode at specific time(s).
- Rphylopars can be used to fit continuous models such as those described above to datasets with multiple observations per species and/or missing data.
- geiger implements ANOVA’s and MANOVA’s in a phylogenetic context.
- ape, PHYLOGR, caper, and motmot implement traditional GLS methods (sensu Grafen or Martins).
- ape can be used to calculate phylogenetic autoregression (sensu Cheverud et al).
- ape and adephylo can be used to calculate phylogenetic autocorrelation (Moran’s I).
- MCMCglmm can be used to assess correlation between traits using a GLMM.
- phylolm can fit phylogenetic linear regression and phylogenetic logistic regression models using a fast algorithm, making it suitable for large trees.
- brms can examine correlations between continuous and discrete traits, and can incorporate multiple measurements per species.
- metafor can perform meta-analyses accounting for phylogenetic structure.
- pmc evaluates the model adequacy of several trait models (from geiger and ouch) using Monte Carlo approaches.
- phyreg implements the Grafen (1989) phyglogenetic regression.
- geomorph can do geometric morphometric analysis in a phylogenetic context.
- dispRity can be used to calculate disparity through time and perform other disparity-related analyses.
- MPSEM can predict features of one species based on information from related species using phylogenetic eigenvector maps.
- convevol and windex can both test for convergent evolution on a phylogeny.
- Claddis can be used to measure morphological diversity from discrete character data and evolutionary tempo on phylogenetic trees.
- ouch, geiger, ape, picante, OUwie, caper, and phytools can be used to simulate continuous traits using Brownian motion.
- ouch and OUwie can be used to simulate continuous traits using the Hansen model (a form of the OU).
- geiger can be used to simulate continuous traits using a speciational model and discrete traits can be simulated using a continuous time Markov model (including models where rates change through time).
- phangorn can simulate DNA or amino acids.
- phytools can simulate discrete character evolution under multiple models.
- phylolm can simulate continuous or binary traits along a tree.
- Rphylopars can simulate data with missing observations.
- ape and phytools can fit a simple birth-death model for when you have extant species only (sensu Nee et al. 1994), survival models, and goodness-of-fit tests (as applied to testing of models of diversification).
- TESS can calculate the likelihood of a tree under a model with time-dependent diversification, including mass extinctions.
- geiger can calculate net rates of diversification (sensu Magellon and Sanderson).
- diversitree implements the BiSSE method (Maddison et al. 1997) and later improvements (FitzJohn et al. 2009).
- hisse implements various hidden state diversification models, including HiSSE (Beaulieu and O’Meara 2016), GeoHiSSE (Caetano et al. 2018), MuHiSSE (Nakov et al. 2019), and MiSSE (trait-independent).
- caper can do the macrocaic test to evaluate the effect of a a trait on diversity.
- apTreeshape also has tests for differential diversification (see description ).
- DDD implements maximum likelihood methods based on the diversity-dependent birth-death process to test whether speciation or extinction are diversity-dependent, as well as identifies key innovations and simulate a density-dependent process.
- PBD can calculate the likelihood of a tree under a protracted speciation model.
- phyloTop has functions for investigating tree shape, with special functions and datasets relating to trees of infectious diseases.
- RPANDA can be used to fit various diversification models to phylogenies, including time-dependent and environmental-dependent models.
- picante can be used to calculate various evolutionary distinctiveness measures, including the “equal splits” (ES) measure.
- castor can be used to estimate identifiable diversification rate parameters from trees (e.g., pulled rates of speciation).
- secsse can be used to fit diversification models with a multistate observed trait and a hidden trait.
- phytools can compute and visualize a lineages-through-time (LTT) plot, and calculate Pybus and Harvey’s (2000) gamma statistic.
Phylogenetics in specific fields
- geomorph and RRPP may be used to evaluate evolutionary trends in multivariate phenotypes. Available methods include phylogenetic linear models (phylogenetic anova/regression, etc.), phylogenetic partial least squares, comparing rates of phenotypic evolution, phylogenetic integration, and phylogenetic modularity. Additionally, ordination approaches include both phylogenetic PCA, and phylogenetically-aligned components analysis (PACA).
- mcmc3r removes among-trait correlation using matrix shrinkage for estimation of branch lengths under Bronwnian motion and finally divergence time estimation in MCMCtree from the suite PAML. A detailed tutorial can be found at https://github.com/sabifo4/morpho.
Time series and paleontology
- paleoTS can be used to analyze paleontological time series data 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).
- strap can do stratigraphic analysis of phylogenetic trees.
- fbdR can be used to estimate diversification rates from phylogenetic trees and fossil occurrence data.
- R offers a wealth of other options for general-purpose time series modeling, many of which are listed in the TimeSeries task view.
Community and microbial ecology
- picante, vegan, SYNCSA, phylotools, PCPS, caper, DAMOCLES, and phyloregion integrate several tools for using phylogenetics with community ecology.
- HMPTrees and GUniFrac provide tools for comparing microbial communities.
- betapart allows computing pair-wise dissimilarities (distance matrices) and multiple-site dissimilarities, separating the turnover and nestedness-resultant components of taxonomic (incidence and abundance based), functional and phylogenetic beta diversity.
- phyloregion extends betapart to allow sparse community matrices allowing larger datasets.
- adiv can calculate various indices of biodiversity including species, functional and phylogenetic diversity, as well as alpha, beta, and gamma diversities.
- entropart can measure and partition diversity based on Tsallis entropy as well as calculate alpha, beta, and gamma diversities.
- metacoder provides functions for handling large taxonomic data sets, like those generated from modern high-throughput sequencing, like metabarcoding.
- phyloseq provides a set of classes and tools to facilitate the import, storage, analysis, and graphical display of microbiome census data.
- phyloclim integrates several tools for phyloclimatic modeling.
Phylogeography and biogeography
- diversitree implements the GeoSSE method for diversification analyses based on two areas.
- Herodotools can be used to perform a wide variety of biogeographical macroevolutionary analyses, including exploring spatial biodiversity patterns, conducting ancestral area reconstruction, and performing evoregion classification.
- epm (EcoPhyloMapper) can be used to calculate various morphological and phylogenetic community metrics across geography.
- BioGeoBEARS allows probabilistic inference of both historical biogeography (ancestral geographic ranges on a phylogeny) as well as comparison of different models of range evolution.
See the Epidemiology task view for details about packages useful for epidemiology, including phylogenetic epidemiology.
- aphylo implements a parsimonious evolutionary model to analyze and predict gene-functional annotations in phylogenetic trees.
- CALANGO can be used to search for annotation terms (e.g., Pfam IDs, GO terms or superfamilies) associated with a quantitative/rank variable.
- TreeExp can be used to perform comparative analyses of gene expression in a phylogenetic context.
- perfectphyloR can construct perfect phylogenies (a rooted binary tree that recursively partitions sequences) to provide insight into the pattern of ancestry of sequence data.
Gene tree–species tree and species delimitation
- splits uses a gene tree to infer species limits based on GMYC (Generalized Mixed Yule Coalescent).
- treeducken simulates nested phylogenetic trees (gene trees in species tree, symbiont trees in host trees) using birth-death processes and transfers between lineages.
- P2C2M.GMYC can identify model violations under a GMYC model.
- bppr can prepare the control files for doing model selection for comparing competing species trees using BPP. A tutorial is available at https://dosreislab.github.io/2018/08/31/bppr.html.
Other useful packages and miscellany
- taxize can interact with a suite of web APIs for taxonomic tasks, such as verifying species names, getting taxonomic hierarchies, and verifying name spelling.
- evobiR contains functions for making a tree at higher taxonomic levels, downloading a taxonomy tree from NCBI or ITIS, and various other miscellaneous functions (simulations of character evolution, calculating D-statistics, etc.).
Interactions with other programs
- ape can call PhyML, Clustal, T-Coffee, and Muscle through various functions.
- geiger can call PATHd8 through its congruify function.
- ips wraps several phylogenetic software for sequence alignment, masking of sequence alignments, and estimation of phylogenies and ancestral character states, including MrBayes, Beast, RAxML, PartitionFinder, and MAFFT, allowing their easy use from within R.
- beastier can call BEAST2 to perform phylogenetic analyses, beautier can generate XML input files for BEAST2 (like BEAUti), and tracerer can be used to parse and analyze BEAST2 output files (like Tracer). beastier is a wrapper for all of these packages.
- Rphylip wraps PHYLIP , a broad variety of programs for tree inference under parsimony, likelihood, and distance, bootstrapping, character evolution, and more.
- BoSSA can use information from various tools to place a query sequence into a reference tree.
- BAMMtools is an interface to the BAMM program to allow visualization of rate shifts, comparison of diversification models, and other functions.
- Revticulate can be used to interact with RevBayes from within R, while RevGadgets can be used to process the output generated by RevBayes.
- bppr can prepare the control files for doing model selection for comparing competing species trees using BPP. A tutorial is available at https://dosreislab.github.io/2018/08/31/bppr.html
- mcmc3r can prepare the control files for carrying out divergence time estimation using MCMCtree from the suite PAML. It also generates morphological alignments in phylip format for using continuous trait models in divergence time estimation in MCMCtree.
- Beaulieu, J.M. and O’Meara, B.C., 2016. Detecting hidden diversification shifts in models of trait-dependent speciation and extinction. Systematic Biology, 65(4): 583-601. doi:10.1093/sysbio/syw022.
- Borregaard, M.K., Rahbek, C., Fjeldsaa, J., Parra, J.L., Whittaker, R.J. and Graham, C.H. 2014. Node-based analysis of species distributions. Methods in Ecology and Evolution 5(11): 1225-1235. doi:10.1111/2041-210X.12283.
- Brazeau, M.D., Guillerme, T. and Smith, M.R. 2019. An algorithm for morphological phylogenetic analysis with inapplicable data. Systematic Biology, 68:619–631. doi:10.1093/sysbio/syy083.
- Butler M.A., King A.A. 2004 Phylogenetic comparative analysis: A modeling approach for adaptive evolution. American Naturalist 164, 683-695. doi:10.1086/426002.
- Caetano, D.S., B.C. O’Meara, and J.M. Beaulieu. 2018. Hidden state models improve state-dependent diversification approaches, including biogeographic models. Evolution, 72:2308-2324. doi:10.1111/evo.13602.
- Cheverud J.M., Dow M.M., Leutenegger W. 1985 The quantitative assessment of phylogenetic constraints in comparative analyses: Sexual dimorphism in body weight among primates. Evolution 39, 1335-1351. doi:10.1111/j.1558-5646.1985.tb05699.x.
- FitzJohn R.G., Maddison W.P., and Otto S.P. 2009. Estimating trait-dependent speciation and extinction rates from incompletely resolved phylogenies. Systematic Biology 58: 595-611. doi:10.1093/sysbio/syp067.
- Garland T., Harvey P.H., Ives A.R. 1992 Procedures for the analysis of comparative data using phylogenetically independent contrasts. Systematic Biology 41, 18-32. doi:10.1093/sysbio/41.1.18.
- Hansen T.F. 1997. Stabilizing selection and the comparative analysis of adaptation. Evolution 51: 1341-1351. doi:10.1111/j.1558-5646.1997.tb01457.x.
- Maddison W.P., Midford P.E., and Otto S.P. 2007. Estimating a binary character’s effect on speciation and extinction. Systematic Biology 56: 701–710. doi:10.1080/10635150701607033.
- Magallon S., Sanderson, M.J. 2001. Absolute Diversification Rates in Angiosperm Clades. Evolution 55(9):1762-1780. doi:10.1111/j.0014-3820.2001.tb00826.x.
- Moore, B.R., Chan, K.M.A., Donoghue, M.J. (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. doi:10.1007/978-1-4020-2330-9_23.
- Nakov, T., Beaulieu, J.M., and Alverson, A.J. 2019. Diatoms diversify and turn over faster in freshwater than marine environments. Evolution, 73: 2497-2511. doi:10.1111/evo.13832.
- Nee S., May R.M., Harvey P.H. 1994. The reconstructed evolutionary process. Philosophical Transactions of the Royal Society of London Series B Biological Sciences 344: 305-311. doi:10.1098/rstb.1994.0068.
- Pagel M. 1999. Inferring the historical patterns of biological evolution. Nature 401, 877-884. doi:10.1038/44766.
- Pybus O.G., Harvey P.H. 2000. Testing macro-evolutionary models using incomplete molecular phylogenies. Proceedings of the Royal Society of London Series B Biological Sciences 267, 2267-2272. doi:10.1098/rspb.2000.1278.
- Tarasov, S. 2023. New phylogenetic Markov models for inapplicable morphological characters. Systematic Biology, syad005. doi:10.1093/sysbio/syad005.
|Core:||ape, geiger, phylobase, phytools.|
|Regular:||adephylo, adiv, apex, aphid, aphylo, apTreeshape, BAMMtools, beastier, beautier, betapart, BoSSA, brms, CALANGO, caper, castor, Claddis, convevol, DAMOCLES, DDD, deeptime, dendextend, dispRity, distory, diversitree, entropart, epm, evobiR, EvoPhylo, FossilSim, geomorph, ggmuller, ggplot2, GUniFrac, hisse, HMPTrees, idendr0, ips, markophylo, MCMCglmm, metacoder, metafor, motmot, MPSEM, mvMORPH, ouch, OUwie, paleobuddy, paleotree, paleoTS, PBD, PCPS, perfectphyloR, phangorn, phyclust, phyext2, phylocanvas, phyloclim, PHYLOGR, phylogram, phylolm, phyloregion, phylosignal, phylotate, phylotools, phyloTop, phyreg, picante, pmc, Quartet, RevGadgets, Revticulate, rncl, RNeXML, Rogue, rotl, RPANDA, Rphylopars, RRPP, secsse, SigTree, strap, surface, SYNCSA, taxize, TBRDist, TESS, tidytree, tracerer, treebase, treedater, TreeDist, treeducken, TreeSearch, TreeSim, treespace, TreeTools, vegan, windex.|