-
Notifications
You must be signed in to change notification settings - Fork 77
Break polytomies by random sampling from tree topologies #564
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
An additional layer to think about here is to do this in such a way as to keep the same polytomy breaking across adjacent trees. So, we don't want to look at each tree independently, but somehow to do this as we're generating the trees, left-to-right. |
Ya I think we'll need to think on edges instead of trees, since we'll need to know the span of the replacement edges. So we could say something like the polytomy spans the distance between the insertion or removal of an edge into the polytomy. |
What do you need to break polytomies for - ranking? |
Well, good question. Sometimes you want to have binary trees, as, e.g. things like the RF distance are undefined for general trees. I'm not sure there's particularly good reasons for polytomy breaking personally, but some people disagree strongly with that. |
Fair enough. But I'm always happy to help think of generalizations that don't require it... |
I'd much prefer to work with general trees too, but if people are going to do polytomy breaking, then it's better if they do it properly. But then, why invest effort in something we don't really believe is necessary... |
Closed as dup of #809 which has a current PR which does as @jeromekelleher suggests w.r.t. adjacent trees. |
(NB - #815 doesn't resolve polytomies by using ranking, but by sequential addition of edges, which does generate equiprobable topologies, and which should scale to huge polytomies more easily, I suspect) |
A reasonable way to break up a polytomy of
n
nodes would be to randomly sample from all possible tree topologies ofn
leaves, insert that structure where the polytomy is, and then replace every leaf with the subtree rooted at the corresponding child in the polytomy. This will be pretty straightforward to write once #510 goes in.The text was updated successfully, but these errors were encountered: