Example #1
0
def create_tree(nodes, edges):
    outTree = Tree()
    for node in nodes:
        outTree.add_node(node)
    for edge in edges:
        outTree.add_edge(edge)
    return outTree
Example #2
0
 def _initialize_tree(self, edges=None, nodes=None):
     # Create Tree object
     tree = Tree()
     # add nodes to the tree
     if nodes:
         tree.add_nodes(nodes)
     else:
         for cluster_id, cluster in self._clustering_results.clusters.items(
         ):
             tree.add_node(cluster.identifier, data=cluster.densities)
         # TODO find clonal cluster and set it as a root
         root = tree.nodes[CLONAL_CLUSTER]
         tree.set_root(root)
     if edges:
         tree.add_edges(edges)
     else:
         # add edges (initially all edges are children of Clonal cluster)
         for identifier, node in tree.nodes.items():
             if identifier != CLONAL_CLUSTER:
                 tree.add_edge(root, node)
     logging.debug('Tree initialized with edges {}'.format(tree.edges))
     return tree