Markov Chain Models for Phylogenetic Trees

Allows for fitting of maximum likelihood models using Markov chains on phylogenetic trees for analysis of discrete character data. Examples of such discrete character data include restriction sites, gene family presence/absence, intron presence/absence, and gene family size data. Hypothesis-driven user- specified substitution rate matrices can be estimated. Allows for biologically realistic models combining constrained substitution rate matrices, site rate variation, site partitioning, branch-specific rates, allowing for non-stationary prior root probabilities, correcting for sampling bias, etc. See Dang and Golding (2016) for more details.


markophylo v1.0-6 (Release date: 2018-01-29)


  • Experimental: New function (estimaterates_f) allows for fixing some parameters in the substitution rate matrix.
  • Maintainance update.

markophylo v1.0-5 (Release date: 2016-01-19)


  • Allows for user-specification of starting values for the rates.

markophylo v1.0-4 (Release date: 2015-12-31)


  • BIC typo corrected.
  • Total number of character patterns typo corrected.

markophylo v1.0-3 (Release date: 2015-11-05)


  • Added citation to manuscript in Bioinformatics.
  • Removed stringr dependency.
  • Quashed a bug that would pop up when building unique phyletic patterns (used within the algorithm) observed when discrete characters in the phyletic patterns included numbers greater than 9.
  • Quashed a bug that popped up when fitting a model with a single branch having a unique rate separate from the surrounding branches.
  • Exported a function called "patterns" used to get list of unique phyletic patterns and their counts.
  • Updated vignette with some installation instructions and contact information.
  • Added a minimal check for bg "listofnodes" argument, which will stop and warn users if any branch is not being listed in the branch grouping.

markophylo v1.0-2 (Release date: 2015-08-28)


  • Included automatically built rate matrices. Speeds up model specification as the rate matrix no longer needs to be typed in as long as it is one of the supported matrix types.

  • Forced reversibility.

  • Both matrices and dataframes are now accepted for the discrete character data argument.

  • Finer control of optimization problem boundaries. Expected to be useful when branch lengths are in units other than expected substitutions per site.

  • Argument matching for some arguments.

  • A minimum version of 1.0.0 is now required for the stringr dependency.

  • More tests for arguments in model specification.

  • More unit tests.

  • External data example in vignette.

  • Help file maintainance.

  • NAMESPACE and DESCRIPTION maintainance.

markophylo v1.0-1 (Release date: 2014-07-07)

First release.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.8 by Utkarsh J. Dang, 2 years ago

Browse source code at

Authors: Utkarsh J. Dang and G. Brian Golding

Documentation:   PDF Manual  

Task views: Phylogenetics, Especially Comparative Methods

GPL (>= 2) license

Imports Rcpp, ape, numDeriv, phangorn

Suggests knitr, testthat, markdown

Linking to Rcpp, RcppArmadillo

See at CRAN