4
$\begingroup$

Various phylogenetic algorithms estimate ancestral states of a phylogenetic dataset. Is there a way in either maximum parsimony, distance-based methods, or Bayesian inference to indicate what the ancestral states of characters were?

$\endgroup$
3
  • 1
    $\begingroup$ In what respect? Do you mean as in looking at the evolution of a character on a tree? If so, there are algorithms for constrained Brownian motion. If you mean in terms of tree estimation, then knowing the ancestral states implies that you know something about the relationships already - if so, you can use constraint trees for some relationships in ML and Bayesian inference. $\endgroup$
    – NatWH
    Jun 20 '18 at 23:34
  • 1
    $\begingroup$ Otherwise if you are just looking for ancestral character state estimation, look at the ace() function in the ape package, or make.simmap() in phytools. $\endgroup$
    – NatWH
    Jun 20 '18 at 23:35
  • 1
    $\begingroup$ Thank you. I had in mind specification of ancestral states in terms of tree estimation, so I will investigate constraint trees in ML and Bayesian inference. $\endgroup$
    – Namenlos
    Jun 20 '18 at 23:38
2
$\begingroup$

For maximum parsimony, Fitch's method seems simple and intuitive, and can be done in the R phangorn package: Fitch, Walter M. (1971). "Toward Defining the Course of Evolution: Minimum Change for a Specific Tree Topology". Systematic Zoology. 20 (4): 406. doi:10.2307/2412116. ISSN 0039-7989. JSTOR 2412116

There are various methodological criticisms of parsimony that you can find in the literature, but its appeal is you can easily understand why the algorithm came to the conclusions it did.

RAxML can do maximum likelihood reconstructions based on a tree and tip values, and I think Mr. Bayes can do a Bayesian version.

$\endgroup$
2
  • $\begingroup$ Curious, it seems like Systematic Biology has the same paper here $\endgroup$
    – llrs
    Jan 29 '19 at 13:53
  • 2
    $\begingroup$ The 70s sure were a crazy time! $\endgroup$ Jan 30 '19 at 14:03
1
$\begingroup$

Yes this approach is done in parsimony, i.e. you can indicate the outgroup and the ancestral state is calculated from there. I assume this is also performed using 'Beast' because it is a non-reversible matrix. Regular ML and Bayes approaches use reversible mutation matrices therefore the tree is calculated first, you can then specify an outgroup to calculate the ancestral state. However, in a reversible matrix the ancestral state is not used in the calcuation. I hope that makes sense.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.