def binomial(self, options): """Ensure species are designated using binomial nomenclature.""" check_file_exists(options.input_taxonomy) fout = open(options.output_taxonomy, 'w') taxonomy = Taxonomy() t = taxonomy.read(options.input_taxonomy) for genome_id, taxon_list in t.items(): taxonomy_str = ';'.join(taxon_list) if not taxonomy.check_full(taxonomy_str): sys.exit(-1) genus = taxon_list[5][3:] species = taxon_list[6][3:] if species and genus not in species: taxon_list[6] = 's__' + genus + ' ' + species taxonomy_str = ';'.join(taxon_list) fout.write('%s\t%s\n' % (genome_id, taxonomy_str)) fout.close() self.logger.info('Revised taxonomy written to: %s' % options.output_taxonomy)
def fill_ranks(self, options): """Ensure taxonomy strings contain all 7 canonical ranks.""" check_file_exists(options.input_taxonomy) fout = open(options.output_taxonomy, 'w') taxonomy = Taxonomy() t = taxonomy.read(options.input_taxonomy) for genome_id, taxon_list in t.iteritems(): full_taxon_list = taxonomy.fill_missing_ranks(taxon_list) taxonomy_str = ';'.join(full_taxon_list) if not taxonomy.check_full(taxonomy_str): sys.exit(-1) fout.write('%s\t%s\n' % (genome_id, taxonomy_str)) fout.close() self.logger.info('Revised taxonomy written to: %s' % options.output_taxonomy)
def fill_ranks(self, options): """Ensure taxonomy strings contain all 7 canonical ranks.""" check_file_exists(options.input_taxonomy) fout = open(options.output_taxonomy, 'w') taxonomy = Taxonomy() t = taxonomy.read(options.input_taxonomy) for genome_id, taxon_list in t.items(): full_taxon_list = taxonomy.fill_missing_ranks(taxon_list) taxonomy_str = ';'.join(full_taxon_list) if not taxonomy.check_full(taxonomy_str): sys.exit(-1) fout.write('%s\t%s\n' % (genome_id, taxonomy_str)) fout.close() self.logger.info('Revised taxonomy written to: %s' % options.output_taxonomy)