Exemplo n.º 1
0
    def test_sampleLabelings(self):
        tree = Tree("(A:1,(B:1,(C:1,(E:1,D:1)Int_1:0.5[&&NHX:ancient=1])Int_2:0.5[&&NHX:ancient=0])Int_3:1)Root;", format=1)
        chrom = {}
        chrom["one"] = ["3","4"]
        species = {}
        species["C"] = chrom
        chrom = {}
        chrom["one"] = ["3","4"]
        species["D"] = chrom
        chrom = {}
        chrom["one"] = []
        species["E"] = chrom
        chrom = {}
        chrom["one"] = []
        species["A"] = chrom
        chrom = {}
        chrom["one"] = []
        species["B"] = chrom

        adj = getAdjacencies.findAdjacencies(species)
        paths = getAdjacencies.findTreePaths(tree)
        internal,adjacenciesAncestral = getAdjacencies.assignAncestralAdjacencies(paths,adj,tree)
        graphs = globalAdjacencyGraph.createGraph(adj,adjacenciesAncestral)
        jointLabels, first = SR.enumJointLabelings(graphs)
        probs={"Int_1":{(6, 7):0.1},"Int_2":{(6, 7):0.1},"Int_3":{(6, 7):0.1},"Root":{(6, 7):0.1}}
        for i in range(0,10):
            validLabels, validAtNode = SR.validLabels(jointLabels,first)
            resolvedCCs = SR.sampleLabelings(tree, graphs, validAtNode, adj,probs, alpha=0)
            reconstructedAdj = SR.reconstructedAdjacencies(resolvedCCs)
            print reconstructedAdj
Exemplo n.º 2
0
 def test_assignAncestralAdjacencies(self):
     internal, adjacenciesAncestral = getAdjacencies.assignAncestralAdjacencies(self.paths, self.adj, self.tree)
     internal1 = internal[self.int1]
     unittest.TestCase.assertEqual(self, internal1, set([]))
     internal2 = internal[self.int2]
     internal3 = internal[self.int3]
     unittest.TestCase.assertEqual(self, internal2, internal3)
     shared = set([(2, 3)])
     unittest.TestCase.assertEqual(self, internal2, shared)
     shared = set([(7, 9)])
     unittest.TestCase.assertNotEqual(self, internal2, shared)