[Bioperl-l] Bootstrap, root, reroot...

Tristan Lefebure tristan.lefebure at gmail.com
Wed Jul 15 18:21:52 EDT 2009


This would indeed be very good. It seems that the current 
implementation might always be suboptimal. Patch after 
patch, I am still harassing Mark with bugs... (see bug #2877 
!).

I don't have the necessary OO skills to help building the 
core object, but I would be happy to help with some 
functions (like get_bipartition_table(), 
is_edge_conflicting(), ...).

Not sure this could be helpful, but I find the ape phylo 
object of R to be both very simple and quite flexible. See 
http://ape.mpl.ird.fr/misc/FormatTreeR_28July2008.pdf for 
details.

--Tristan


On Wednesday 15 July 2009 17:54:25 Mark A. Jensen wrote:
> 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