def __generateServices(self, numServices, serviceParameters): generator = self.__parameterGenerator() services = [] taxonomy = Taxonomy('Root') for i in xrange(numServices): service = [] for i in xrange(serviceParameters): p = generator.next() service.append(p) taxonomy.addChild('Root', p) services.append(service) return services, taxonomy
if child.name == lTaxonomy[iTaxLevel]: node = child break ## remove nodes with one child for node in tree.traverse(): if len(node.get_children()) == 1: if len(node.get_ancestors()) > 0: ancestor = node.get_ancestors()[0] ancestor.add_child(node.get_children()[0]) ancestor.remove_child(node) else: tree = node.get_children()[0] return tree taxonomy = Taxonomy(sTaxdumpDir=sTaxdumpDir) lTaxonomies = [] for sLine in open(sInFile): sTaxId = sLine.strip() lTaxonomy = taxonomy.getTaxonomyByTaxId(sTaxId) lTaxonomy = list( map(lambda x: '{} {}'.format(re.sub('^ a-zA-Z0-9_', '', x[1]), x[0]), lTaxonomy))[::-1] lTaxonomies.append(lTaxonomy) ## for testing """ lTaxonomies = [['cellular organisms', 'eukaryota', 'opisthokonta', 'metazoa', 'eumetazoa', 'bilateria', 'deuterostomia', 'chordata', 'craniata', 'vertebrata', 'h**o sapiens'],\ ['cellular organisms', 'eukaryota', 'opisthokonta', 'metazoa', 'eumetazoa', 'bilateria', 'deuterostomia', 'chordata', 'tunicata', 'ascidiacea', 'phlebobranchia', 'cionidae', 'ciona', 'ciona intestinalis'],\ ['cellular organisms', 'bacteria', 'terrabacteria group', 'tenericutes', 'mollicutes', 'mycoplasmatales', 'mycoplasmataceae', 'mycoplasma', 'mycoplasma pneumoniae'],\ ['cellular organisms', 'archaea', 'euryarchaeota', 'methanomada group', 'methanococci', 'methanococcales', 'methanococcaceae', 'methanococcus', 'methanococcus maripaludis']]
def __createDistributionTaxonomy(self): taxonomy = Taxonomy('Root') taxonomy.addChild('Root', 'A') taxonomy.addChild('Root', 'B') taxonomy.addChild('A', 'C') taxonomy.addChild('A', 'D') taxonomy.addChild('B', 'E') taxonomy.addChild('B', 'F') taxonomy.addChild('C', 'G') taxonomy.addChild('C', 'H') taxonomy.addChild('D', 'I') taxonomy.addChild('D', 'J') taxonomy.addChild('E', 'K') taxonomy.addChild('E', 'L') taxonomy.addChild('F', 'M') taxonomy.addChild('F', 'N') return taxonomy