Answers.Body: <p>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</p>
  
  <p>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. </p>
  
  <p>RAxML can do maximum likelihood reconstructions based on a tree and tip values, and I think Mr. Bayes can do a Bayesian version.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-29T13:53:35.843Z
Answers.Text: Curious, it seems like Systematic Biology has the same paper [here](https://academic.oup.com/sysbio/article-abstract/20/4/406/1673276)
Answers.UserDisplayName: llrs
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-30T14:03:56.317Z
Answers.Text: The 70s sure were a crazy time!
Answers.UserDisplayName: Jay Moore
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-01-29T11:14:06.697Z
Answers.LastActivityDate: 2019-02-01T10:33:33.850Z
Answers.LastEditDate: 2019-02-01T10:33:33.850Z
Answers.UserDisplayName: Jay Moore
Answers.Body: <p>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.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-12-28T21:35:02.293Z
Answers.LastActivityDate: 2018-12-28T21:35:02.293Z
Answers.UserDisplayName: M__
Body: <p>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? </p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2018-06-20T23:34:51.153Z
Comments.Text: 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.
Comments.UserDisplayName: NatWH
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2018-06-20T23:35:58.063Z
Comments.Text: 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.
Comments.UserDisplayName: NatWH
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2018-06-20T23:38:08.367Z
Comments.Text: 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.
Comments.UserDisplayName: Namenlos
Tags: <software-recommendation><phylogenetics><algorithms><phylogeny>
Title: Do any computational phylogenetic methods enable the specification of ancestral states?
ThreadText: # Do any computational phylogenetic methods enable the specification of ancestral states?
  
  (Asked by: username_0 on 2018-06-20)
  
  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?
  
  **Tags:** software-recommendation, phylogenetics, algorithms, phylogeny
  
  > **Comments:**
  > **username_1**: 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.  
  > **username_1**: 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.  
  > **username_0**: 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.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2019-01-29. Score: 2
  
  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.
  
  > **Comments:**
  > **username_3**: Curious, it seems like Systematic Biology has the same paper [here](https://academic.oup.com/sysbio/article-abstract/20/4/406/1673276)  
  > **username_2**: The 70s sure were a crazy time!  
  
  ---
  
  ### Answer by username_4 on 2018-12-28. Score: 1
  
  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.
  
  
  ---
  
  