Example #1
0
				scores[pdbs[i]] = {}
				PhyloM.append([])
				scoresM.append([])
			scores[pdbs[i]][pdbs[j]] = score
			scoresM[i].append(score)
		else:
			print '{:->3.2%}\t{} {}\t{}'.format( s/total, pdbs[i], pdbs[j], "error")
			if pdbs[i] not in scores:
				scores[pdbs[i]] = {}
				PhyloM.append([])
				scoresM.append([])
			scores[pdbs[i]][pdbs[j]] = 0
			scoresM[i].append(0)
		
print_matrix("Scores", scores, pdbs)
scoresM = TreeConstruction._Matrix([x[x.rfind('/')+1:] for x in pdbs], scoresM)

distances = {}
for i in range(leng):
	distances[pdbs[i]] = {}
	for j in range(i+1):
		distances[pdbs[i]][pdbs[j]] = (scores[pdbs[i]][pdbs[i]]+scores[pdbs[j]][pdbs[j]])/2.0 - scores[pdbs[i]][pdbs[j]]
		PhyloM[i].append(distances[pdbs[i]][pdbs[j]])
PhyloM = TreeConstruction._DistanceMatrix([x[x.rfind('/')+1:] for x in pdbs], PhyloM)
print_matrix("Distances", distances, pdbs)

tree = TreeConstruction.DistanceTreeConstructor().upgma(PhyloM)
Phylo.draw_ascii(tree)
tree.ladderize()
#Phylo.draw_graphviz(tree, node_size=0)
def hide_inner(node):
                PhyloM.append([])
                scoresM.append([])
            scores[pdbs[i]][pdbs[j]] = score
            scoresM[i].append(score)
        else:
            print '{:->3.2%}\t{} {}\t{}'.format(s / total, pdbs[i], pdbs[j],
                                                "error")
            if pdbs[i] not in scores:
                scores[pdbs[i]] = {}
                PhyloM.append([])
                scoresM.append([])
            scores[pdbs[i]][pdbs[j]] = 0
            scoresM[i].append(0)

print_matrix("Scores", scores, pdbs)
scoresM = TreeConstruction._Matrix([x[x.rfind('/') + 1:] for x in pdbs],
                                   scoresM)

distances = {}
for i in range(leng):
    distances[pdbs[i]] = {}
    for j in range(i + 1):
        distances[pdbs[i]][pdbs[j]] = (scores[pdbs[i]][pdbs[i]] + scores[
            pdbs[j]][pdbs[j]]) / 2.0 - scores[pdbs[i]][pdbs[j]]
        PhyloM[i].append(distances[pdbs[i]][pdbs[j]])
PhyloM = TreeConstruction._DistanceMatrix([x[x.rfind('/') + 1:] for x in pdbs],
                                          PhyloM)
print_matrix("Distances", distances, pdbs)

tree = TreeConstruction.DistanceTreeConstructor().upgma(PhyloM)
Phylo.draw_ascii(tree)
tree.ladderize()