def process(in_filename, out_filename): in_file = open(in_filename) out_file = open(out_filename, 'w') header, sequence = utils.load(in_file) in_file.close() out_file.write(header + '\n') out_file.write('\n'.join(utils.prepare_subsequences(utils.translate(sequence), 80))) out_file.close()
def process(model_file, sequence_file, window_size): model = json.loads(model_file.read()) model_file.close() header, sequence = utils.load(sequence_file) sequence_file.close() print(header) hmm = HMM(**model['model']) subsequences = utils.prepare_subsequences(sequence, window_size) decoded = '' for seq in subsequences: decoded += ''.join(hmm.decode(seq)[1]) print('{} / {}'.format(len(decoded), 3 * len(sequence)), file=sys.stderr) lines = utils.prepare_subsequences(decoded, 80) for l in lines: print(l)
def prepare_subsequences_test(): # Given sequence = 'AAAGGGCCCU' # When subseq = utils.prepare_subsequences(sequence, 3) # Then assert len(subseq) == 4 assert subseq[0] == 'AAA' assert subseq[1] == 'GGG' assert subseq[2] == 'CCC' assert subseq[3] == 'U'