[Bioperl-l] Bootstrap, root, reroot...
Mark A. Jensen
maj at fortinbras.us
Wed Jul 15 21:54:25 UTC 2009
After fooling around with bug 2877,
I'm thinking seriously about starting the edge-branch
project in bioperl-dev, building out an implementation
off the interfaces B:T:TreeI and B:T:NodeI. It would
give the opp'y for some code rationalization too.
Anyone out there have a problem with that?
cheers MAJ
----- Original Message -----
From: "Aidan Budd" <budd at embl-heidelberg.de>
To: "BioPerl List" <bioperl-l at lists.open-bio.org>
Sent: Saturday, July 11, 2009 3:52 AM
Subject: Re: [Bioperl-l] Bootstrap, root, reroot...
> On Thu, 9 Jul 2009, Tristan Lefebure wrote:
>
>> ...
>>
>> My understanding here is that the problem is linked to the
>> well-known difficulty to differentiate node from branch
>> labels in newick trees. Bootstrap scores are branch
>> attributes not node attributes, but since Bio::TreeI has no
>> branch/edge/bipartition object they are attached to a node,
>> and in fact reflects the bootstrap score of the ancestral
>> branch leading to that node. Troubles naturally come when
>> you are dealing with an unrooted tree or reroot a tree: a
>> child can become an ancestor, and, if the bootstrap scores
>> is not moved from the old child to the new child, it will
>> end up attached at the wrong place (i.e. wrong node).
>>
>> I see several fix to that:
>>
>> 1- incorporate Bank's fix into the root() method. I.e. if
>> there is bootstrap score, after re-rooting, the one on the
>> old to new ancestor path, should be moved to the right node.
>>
>> 2- Modify the way trees are stored in bioperl to incorporate
>> branch/edge/bipartition object, and move the bootstrap
>> scores to them. That won't be easy and will break many
>> things...
>
> Just wanted to add that, from my point of view, it would be great if it
> were possible to add edge/branch objects as part of the bioperl trees.
> Perhaps so that the previous set of methods still behaved as before, but
> with some new methods on the trees such as get_splits() or
> get_branches() along with associated split/branch/etc. objects...?
>
> Being a bioperl user but keeping well away from coding objects in perl,
> the lack of such methods/objects meant I chose, in the end, not to use a
> bioperl solution to work with my trees (going instead for a homemade
> clunky python solution, where I'm happier with the OO stuff)
>
> No idea how difficult/problematic this would be to implement, though -
> just my 2 cents worth...
>
>> What do you think?
>>
>> --Tristan
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>>
>
> --
> ----------------------------------------------------------------------
> Aidan Budd tel:+49 (0)6221 387 8530
> EMBL - European Molecular Biology Laboratory fax:+49 (0)6221 387 8517
> Meyerhofstr. 1, 69117 Heidelberg, Germany
>
> http://www.embl-heidelberg.de/~budd/
> http://www-db.embl.de/jss/EmblGroupsHD/per_1807.html
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
>
More information about the Bioperl-l
mailing list