def predict(self,**kw): """Predict host taxonomy for viral sequences. Parameters are taken from self.opt. @param predSeq Name of FASTA sequence file to classify @param immDb Path to directory with IMMs @param predOutDir Output directory for predictions """ sopt = self.opt opt = copy(sopt) opt.mode = "predict" opt.inpSeq = sopt.predSeq opt.outDir = sopt.predOutDir immStore = ImmStore(opt.immDb) immIds = immStore.listImmIds() immIdsPath = pjoin(opt.outDir,"imm-ids.pkl") rmrf(opt.outDir) makedir(opt.outDir) dumpObj(immIds,immIdsPath) opt.immIds = immIdsPath #opt.predMode = "host" imm = ImmClassifierApp(opt=opt) jobs = imm.run(**kw) return jobs
def taxonomy_report(pred_out_taxa,out_dir="results",ncbi_taxonomy_dir=None): pred_out_taxa = os.path.abspath(pred_out_taxa) out_dir = os.path.abspath(out_dir) if ncbi_taxonomy_dir: ncbi_taxonomy_dir = os.path.abspath(ncbi_taxonomy_dir) opt = Struct() opt.runMode = "inproc" opt.web = False opt.needTerminator = False opt.mode = "export-predictions" opt.predOutDir = out_dir opt.predOutTaxa = pred_out_taxa opt.predMinLenSamp = 1 opt.skipPredOutTaxaCsv = 1 opt.taxaTreeNcbiDir = ncbi_taxonomy_dir opt.predOutStatsKronaEmbed = "krona" ImmClassifierApp.fillWithDefaultOptions(opt) imm = ImmClassifierApp(opt=opt) imm.run()
def _outScoreCombPath(klass,opt): o = Struct(outDir=opt.predOutDir,mode="predict") ImmClassifierApp.fillWithDefaultOptions(o) return o.outScoreComb