[Bioperl-l] "richer" tree nodes

Aaron J Mackey Aaron J. Mackey" <amackey@virginia.edu
Mon, 15 Jul 2002 13:08:51 -0400 (EDT)


I'm at the last part of the PAML output parsing where I'd like to
associate specific calculated values with nodes on the tree (or, more
accurately, with branches between the nodes).  All of these parameters fit
the same definition that "branch_length" employs:  the value applies to
the ancestral branch of the current node.  So I have two choices:

1) Make a tree out of PAML::Tree::Node objects (@ISA Tree::NodeI) that
have the additional storage/get_set methods for each of these parameters;
this would mean implementing a new PAML::TreeEventBuilder that is
identical to the current TreeEventBuilder, but for the Bio::Tree::Node
specification

2) As with 1, but make the generic TreeEventBuilder have a NodeFactory
parameter, and allow TreeIO to be able to specify what kind of node
objects we want. (by extension, what kind of tree objects as well).

3) Alter the generic Tree::Node to have more flexible storage for
"statistical" parameters on branches (which could then subsume bootstrap,
optionally): something like this:

$node = new Bio::Tree -stats => { omega => '0.01', t => '1.23' }
$node->stats(omega => 1.0);
$t = $node->stats('t');

Of course all sorts of AUTOLOAD chicanery could also be done here.

thoughts?  3 is obviously the easiest, but 2 has it's own appeal as well.

-Aaron

-- 
 Aaron J Mackey
 Pearson Laboratory
 University of Virginia
 (434) 924-2821
 amackey@virginia.edu