blob: ffd7795b6ea4b7fb4c9c85d1cdb0e10138d3bd79 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
from ete3 import Nexml
# Create an empty Nexml project
nexml_project = Nexml()
# Load content from NeXML file
nexml_project.build_from_file("trees.xml")
# All XML elements are within the project instance.
# exist in each element to access their attributes.
print("Loaded Taxa:")
for taxa in nexml_project.get_otus():
for otu in taxa.get_otu():
print("OTU:", otu.id)
# Extracts all the collection of trees in the project
tree_collections = nexml_project.get_trees()
# Select the first collection
collection_1 = tree_collections[0]
# print the topology of every tree
for tree in collection_1.get_tree():
# trees contain all the nexml information in their "nexml_node",
# "nexml_tree", and "nexml_edge" attributes.
print("Tree id", tree.nexml_tree.id)
print(tree)
for node in tree.traverse():
print("node", node.nexml_node.id, "is associated with", node.nexml_node.otu, "OTU")
# Output:
# ==========
# Loaded Taxa:
# OTU: t1
# OTU: t2
# OTU: t3
# OTU: t4
# OTU: t5
# Tree id tree1
#
# /-n5(n5)
# /---|
# | \-n6(n6)
# /---|
# | | /-n8(n8)
# ----| \---|
# | \-n9(n9)
# |
# \-n2(n2)
# node n1 is associated with None OTU
# node n3 is associated with None OTU
# node n2 is associated with t1 OTU
# node n4 is associated with None OTU
# node n7 is associated with None OTU
# node n5 is associated with t3 OTU
# node n6 is associated with t2 OTU
# node n8 is associated with t5 OTU
# node n9 is associated with t4 OTU
# Tree id tree2
#
# /-tree2n5(n5)
# /---|
# | \-tree2n6(n6)
# /---|
# | | /-tree2n8(n8)
# ----| \---|
# | \-tree2n9(n9)
# |
# \-tree2n2(n2)
# node tree2n1 is associated with None OTU
# node tree2n3 is associated with None OTU
# node tree2n2 is associated with t1 OTU
# node tree2n4 is associated with None OTU
# node tree2n7 is associated with None OTU
# node tree2n5 is associated with t3 OTU
# node tree2n6 is associated with t2 OTU
# node tree2n8 is associated with t5 OTU
# node tree2n9 is associated with t4 OTU
|