Mercurial > repos > iuc > trycycler_reconcile_msa
view trycycler.py @ 6:bb11fefb23a3 draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/trycycler commit e9abd8b86133e530d0395d85bca320a1af27a9b6
author | iuc |
---|---|
date | Tue, 02 Apr 2024 08:29:11 +0000 |
parents | 4ac81df20c74 |
children |
line wrap: on
line source
#!/usr/bin/env python3 from os import path, walk from sys import argv def cluster(output_folder): counter = 1 for root, dir, files in walk(output_folder): if root.endswith('1_contigs'): output_path = path.join(output_folder, f"cluster_0{counter}.fasta") with open(output_path, "a") as out_cluster: for fasta in files: fasta_path = path.join(root, fasta) fasta = open(fasta_path).read() out_cluster.write(fasta) counter += 1 def reconcile(input_file): number_cluster = [x for x in input_file[-1:0:-1] if x.isdigit()][0] full_path = f"selected_cluster/cluster_0{number_cluster}/1_contigs/" with open(input_file) as tmp: for line in tmp: if ">" in line: filename = line[1:].strip() output_fasta = f"{full_path}{filename}.fasta" with open(output_fasta, "a") as handle: handle.write(line) def main(): if argv[1] == "cluster": cluster(argv[2]) if argv[1] == "reconcile": reconcile(argv[2]) if __name__ == "__main__": main()