def load_file(file_name): '''Load tree, leaf DNA strings from file.''' f = open(file_name, 'rb') t = rt.read_newick_str(f.readline().strip()) aug_tree(t) d_leaf = ['' for _ in xrange(t.num_nodes)] for record in FastaIterator(f): d_leaf[t.node_index[record.id]] = record.seq return t, d_leaf
def rsub(file_name): '''Main driver to solve this problem.''' f = open(file_name, 'rb') t = rt.read_newick_str(f.readline().strip()) s = dict((record.name, record.seq) for record in FastaIterator(f)) # print s for i in xrange(len(next(s.itervalues()))): # print '-' * 70 # print 'i', i # print '-' * 70 si = dict((k, v[i]) for k, v in s.iteritems()) for node, letter in reversing_subs(t, si): print '%s %s %d %s->%s->%s' % (node[0], node[1], i + 1, letter[1], letter[0], letter[1])
def sptd(f): '''Main driver to solve this problem.''' lines = ro.read_lines(f) return rt.dist_split(rt.read_newick_str(lines[1]), rt.read_newick_str(lines[2]), lines[0].split())