aditya shukla wrote:
Hello folks , i am using the newick module
http://www.daimi.au.dk/~mailund/newick.html.I am just learning to use it
and i have a question about it.
from newick.tree import parse_tree
from newick.tree import add_parent_links
from newick.tree import add_distance_from_root
import sys
t = parse_tree('((A:2,B:3):1,C:6);')
print t
deltas = add_distance_from_root(t)
now when i do this i can get the output like this
(('A' : 2.0, 'B' : 3.0) : 1.0, 'C' : 6.0)
None
This is the code of the add_distance_from_root(0
def add_distance_from_root(tree):
'''Extend all nodes with the distance (branch length) from the root'''
tree.distance_from_root = 0.0 # 'tree' is the root...
class V(TreeVisitor):
def pre_visit_edge(self,src,b,l,dst):
if l is None: l = 0
dst.distance_from_root = src.distance_from_root - l
I am puzzled why this class is inside the function and why -1 instead of
+1, but...
tree.dfs_traverse(V())
From here it is clear that the function does not return anything but i
wanna get the value of the distance from root.How can i get this?
I presume each node gets an attribute 'distance_from_root', so read that
attribute of whatever node.
--
http://mail.python.org/mailman/listinfo/python-list