Mercurial > repos > iuc > checkm_analyze
annotate format_taxon_list.py @ 2:bcb8dc01f296 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 3ae2bd72f789518e95ef65b97e0e5ac90165e113
| author | iuc | 
|---|---|
| date | Mon, 02 Sep 2024 13:50:29 +0000 | 
| parents | 7ccea589e8b7 | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
1 from pathlib import Path | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
2 | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
3 from checkm.taxonParser import TaxonParser | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
4 from checkm.util.taxonomyUtils import taxonomicRanks | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
5 | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
6 if __name__ == '__main__': | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
7 tool_data_dp = Path('tool-data') | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
8 | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
9 # get all available marker sets | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
10 taxonParser = TaxonParser() | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
11 taxonMarkerSets = taxonParser.readMarkerSets() | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
12 | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
13 # create a table per rank | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
14 for rank in taxonomicRanks: | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
15 rank_fp = tool_data_dp / Path("%s.loc.sample" % rank) | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
16 with rank_fp.open('w') as rank_f: | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
17 rank_f.write('# File generated by format_taxon_list.py script\n') | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
18 rank_f.write('# taxon\tdescription\n') | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
19 for taxon in sorted(taxonMarkerSets[rank]): | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
20 markerSet = taxonMarkerSets[rank][taxon] | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
21 numMarkers, numMarkerSets = markerSet.size() | 
| 
 
7ccea589e8b7
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/checkm commit 2a3b068a98bf0e913dc03e0d5c2182cfd102cf27
 
iuc 
parents:  
diff
changeset
 | 
22 rank_f.write('{taxon}\t{taxon} ({markerSet.numGenomes} genomes, {numMarkers} marker genes, {numMarkerSets} marker sets)\n') | 
