コード例 #1
0
 def test_root_midpt2(self):
     """ midpoint between nodes should behave correctly"""
     from qiime.make_phylogeny import root_midpt
     from cogent.core.tree import PhyloNode
     from qiime.parse import parse_newick
     tree = parse_newick('(a:1,((c:1,d:2.5)n3:1,b:1)n2:1)rt;')
     tmid = root_midpt(tree)
     self.assertEqual(tmid.getDistances(), tree.getDistances())
     tipnames = tree.getTipNames()
     nontipnames = [t.Name for t in tree.nontips()]
     self.assertTrue(tmid.isRoot())
     self.assertEqual(tmid.distance(tmid.getNodeMatchingName('d')), 2.75)
コード例 #2
0
 def test_root_midpt2(self):
     """ midpoint between nodes should behave correctly"""
     from qiime.make_phylogeny import root_midpt
     from cogent.core.tree import PhyloNode
     from qiime.parse import parse_newick
     tree = parse_newick('(a:1,((c:1,d:2.5)n3:1,b:1)n2:1)rt;')
     tmid = root_midpt(tree)
     self.assertEqual(tmid.getDistances(),tree.getDistances())
     tipnames = tree.getTipNames()
     nontipnames = [t.Name for t in tree.nontips()]
     self.assertTrue(tmid.isRoot())
     self.assertEqual(tmid.distance(tmid.getNodeMatchingName('d')), 2.75)
コード例 #3
0
 def test_root_midpt(self):
     """midpoint should be selected correctly when it is an internal node
     """
     from qiime.make_phylogeny import root_midpt
     from cogent.core.tree import PhyloNode
     from qiime.parse import parse_newick
     tree = parse_newick('(a:1,((c:1,d:3)n3:1,b:1)n2:1)rt;')
     tmid = root_midpt(tree)
     self.assertEqual(tmid.getDistances(), tree.getDistances())
     tipnames = tree.getTipNames()
     nontipnames = [t.Name for t in tree.nontips()]
     # for tipname in tipnames:
     #     tmid_tip = tmid.getNodeMatchingName(tipname)
     #     orig_tip = tree.getNodeMatchingName(tipname)
     #     for nontipname in nontipnames:
     #         tmid_dist=\
     #           tmid.getNodeMatchingName(nontipname).distance(tmid_tip)
     #         orig_dist=\
     #           tree.getNodeMatchingName(nontipname).distance(orig_tip)
     #         print nontipname, tipname, 'assert'
     # self.assertEqual(tmid_dist, orig_dist)
     self.assertTrue(tmid.isRoot())
     self.assertEqual(tmid.distance(tmid.getNodeMatchingName('d')), 3)
コード例 #4
0
 def test_root_midpt(self):
     """midpoint should be selected correctly when it is an internal node
     """
     from qiime.make_phylogeny import root_midpt
     from cogent.core.tree import PhyloNode
     from qiime.parse import parse_newick
     tree = parse_newick('(a:1,((c:1,d:3)n3:1,b:1)n2:1)rt;')
     tmid = root_midpt(tree)
     self.assertEqual(tmid.getDistances(),tree.getDistances())
     tipnames = tree.getTipNames()
     nontipnames = [t.Name for t in tree.nontips()]
     # for tipname in tipnames:
     #     tmid_tip = tmid.getNodeMatchingName(tipname)
     #     orig_tip = tree.getNodeMatchingName(tipname)
     #     for nontipname in nontipnames:
     #         tmid_dist=\
     #           tmid.getNodeMatchingName(nontipname).distance(tmid_tip)
     #         orig_dist=\
     #           tree.getNodeMatchingName(nontipname).distance(orig_tip)
     #         print nontipname, tipname, 'assert'
             # self.assertEqual(tmid_dist, orig_dist)
     self.assertTrue(tmid.isRoot())
     self.assertEqual(tmid.distance(\
         tmid.getNodeMatchingName('d')), 3)