sys.stderr.write('Failed to get genome using reference %s\n' %(args.genomeref)) exit(1) # Create a worker for running the algorithm. worker = ProbAnnotationWorker(genome['id']) # Run the probabilistic annotation algorithm. try: # Convert the features in the genome object to a fasta file. fastaFile = worker.genomeToFasta(genome['features']) # Run blast using the fasta file. blastResultFile = worker.runBlast(fastaFile) # Calculate roleset probabilities. rolestringTuples = worker.rolesetProbabilitiesMarble(blastResultFile) # Calculate per-gene role probabilities. roleProbs = worker.rolesetProbabilitiesToRoleProbabilities(rolestringTuples) # Calculate whole cell role probabilities. totalRoleProbs = worker.totalRoleProbabilities(roleProbs) # Calculate complex probabilities. complexProbs = worker.complexProbabilities(totalRoleProbs) # Calculate reaction probabilities. reactionProbs = worker.reactionProbabilities(complexProbs) # Cleanup work directory. worker.cleanup()
reactionsToComplexes[reactionId].append( complexRef.split('/')[-1]) # Create a worker for running the algorithm. worker = ProbAnnotationWorker(genome['id']) # Run the probabilistic annotation algorithm. try: # Convert the features in the genome object to a fasta file. fastaFile = worker.genomeToFasta(genome['features']) # Run blast using the fasta file. blastResultFile = worker.runBlast(fastaFile) # Calculate roleset probabilities. rolestringTuples = worker.rolesetProbabilitiesMarble(blastResultFile) # Calculate per-gene role probabilities. roleProbs = worker.rolesetProbabilitiesToRoleProbabilities( rolestringTuples) # Calculate whole cell role probabilities. totalRoleProbs = worker.totalRoleProbabilities(roleProbs) # Calculate complex probabilities. complexProbs = worker.complexProbabilities( totalRoleProbs, complexesToRequiredRoles=complexesToRoles) # Calculate reaction probabilities. reactionProbs = worker.reactionProbabilities( complexProbs, rxnsToComplexes=reactionsToComplexes)