def write_sequeces(out_file, sequences_dict): with open(out_file, 'wt') as writer: for header in sequences_dict: writer.write('>' + header + '\n') writer.write('\n'.join( utils.chunkstring(sequences_dict[header]['sequence'], 80)) + '\n')
def clean_headers_reference_file(reference_file, outdir): new_reference_file = reference_file sequences, headers, headers_changed = get_sequence_information( reference_file) if headers_changed: utils.Bcolors_print( str('At least one of the following characters was found in sequences headers: {}.\n' 'Replacing those with _'.format(problematic_characters) + '\n'), 'UNDERLINE') new_reference_file = \ os.path.join(outdir, os.path.splitext(os.path.basename(reference_file))[0] + '.headers_renamed.fasta') with open(new_reference_file, 'wt') as writer: for i in sequences: writer.write('>' + sequences[i]['header'] + '\n') fasta_sequence_lines = utils.chunkstring( sequences[i]['sequence'], 80) for line in fasta_sequence_lines: writer.write(line + '\n') return new_reference_file, headers, sequences
def write_seq_from_sequence_dict(sequence_dict, out_fasta_file): """ Write a fasta file with sequences found in sequence_dict dictionary Parameters ---------- sequence_dict : dict Dictionary as follow sequence_dict[counter] = {'header': without_greater_sign, 'sequence': seq, 'length': seq_length_int} out_fasta_file : str Path to output fasta file Returns ------- """ with open(out_fasta_file, 'wt', newline='\n') as writer: for _, seq_info in sequence_dict.items(): writer.write('>{header}\n' '{seq}\n'.format(header=seq_info['header'], seq='\n'.join( utils.chunkstring( seq_info['sequence'], 80))))
def write_sequence(reference_dict, writer): for header, sequence in reference_dict.items(): writer.write('>' + header + '\n') writer.write('\n'.join(utils.chunkstring(sequence, 80)) + '\n')