r = dict(zip(outheaders, outrows[i])) homovarsc = max( 0.0, min(pvscore(r["NotHetFDR"]), pvscore(r["NotHomoRefFDR"])) - pvscore(r["NotHomoVarFDR"])) homorefsc = max( 0.0, min(pvscore(r["NotHetFDR"]), pvscore(r["NotHomoVarFDR"])) - pvscore(r["NotHomoRefFDR"])) hetsc = max( 0.0, min(pvscore(r["NotHomoRefFDR"]), pvscore(r["NotHomoVarFDR"])) - pvscore(r["NotHetFDR"])) vardomsc = pvscore(r["VarDomFDR"]) refdomsc = pvscore(r["RefDomFDR"]) pos = outheaders.index("HomoVarSc") outrows[i][pos] = homovarsc pos = outheaders.index("HomoRefSc") outrows[i][pos] = homorefsc pos = outheaders.index("HetSc") outrows[i][pos] = hetsc pos = outheaders.index("VarDomSc") outrows[i][pos] = vardomsc pos = outheaders.index("RefDomSc") outrows[i][pos] = refdomsc progress.stage('Output results') output.from_rows( map(lambda r: dict(zip(outheaders, r + [emptysym] * 50)), outrows)) progress.done()
for j, fdrk in enumerate(fdrkeys): pos1 = outheaders.index(fdrk) for i in range(len(outrows)): outrows[i][pos1] = allfdrs[(j * n) + i] for i in range(len(outrows)): r = dict(zip(outheaders, outrows[i])) homovarsc = max(0.0, min(pvscore(r["NotHetFDR"]), pvscore( r["NotHomoRefFDR"])) - pvscore(r["NotHomoVarFDR"])) homorefsc = max(0.0, min(pvscore(r["NotHetFDR"]), pvscore( r["NotHomoVarFDR"])) - pvscore(r["NotHomoRefFDR"])) hetsc = max(0.0, min(pvscore(r["NotHomoRefFDR"]), pvscore( r["NotHomoVarFDR"])) - pvscore(r["NotHetFDR"])) vardomsc = pvscore(r["VarDomFDR"]) refdomsc = pvscore(r["RefDomFDR"]) pos = outheaders.index("HomoVarSc") outrows[i][pos] = homovarsc pos = outheaders.index("HomoRefSc") outrows[i][pos] = homorefsc pos = outheaders.index("HetSc") outrows[i][pos] = hetsc pos = outheaders.index("VarDomSc") outrows[i][pos] = vardomsc pos = outheaders.index("RefDomSc") outrows[i][pos] = refdomsc progress.stage('Output results') output.from_rows( map(lambda r: dict(zip(outheaders, r + [emptysym] * 50)), outrows)) progress.done()
sum(counts.values()), duplicates_removed, len(reads), total] outrows.append(row) progress.update() progress.done() progress.stage('Multiple-test correction and FDR computation') bonf = bonferroni(pvalues) fdr = fdr(pvalues) i = 0 pvalpos = outheaders.index('P-Value') for r in outrows: if len(r) > pvalpos: if r[pvalpos] != emptysym: r.insert(pvalpos + 1, fdr[i]) r.insert(pvalpos + 1, bonf[i]) i += 1 else: r.insert(pvalpos + 1, emptysym) r.insert(pvalpos + 1, emptysym) progress.done() progress.stage('Output results') output.from_rows( [dict(list(zip(outheaders, r + [emptysym] * 50))) for r in outrows]) progress.done()
pvalues.append(pval) l = lod(nsnpi, (nsnpi + nsnpex), (nsnpi + nwti), (nsnpi + nsnpex + nwti + nwtex)) if l != None: lodval = l r['Probability'] = p r['P-Value'] = pval r['LOD'] = lodval row = dict(iter(r.items())) outrows.append(row) bonf = bonferroni(pvalues) fdr = fdr(pvalues) i = 0 for r in outrows: if r['P-Value'] != emptysym: r['Bonferroni'] = bonf[i] r['FDR'] = fdr[i] i += 1 for k in outheaders: if k not in r: r[k] = emptysym progress.stage("Output results") output.from_rows(outrows)
headers=outheaders1, sheet='Results') elif extn == 'xlsx': output = XLSXFileTable(filename=filename, headers=outheaders1, sheet='Results') elif extn == 'txt': output = TXTFileTable(filename=filename, headers=outheaders1) emptysym = "-" else: raise RuntimeError("Unexpected output file extension: %s" % filename) else: output = TXTFileTable(filename=sys.stdout, headers=outheaders1) emptysym = "-" progress.stage('Output results') if opt.output: outdir = os.path.split(opt.output)[0] if outdir and not os.path.exists(outdir): os.makedirs(outdir, exist_ok=True) output.from_rows([ dict( list( zip( outheaders, list(map(lambda v: emptysym if (v == None) else v, r)) + [emptysym] * 50))) for r in outrows ]) progress.done()
pvalues.append(pval) l = lod(nsnpi, (nsnpi + nsnpex), (nsnpi + nwti), (nsnpi + nsnpex + nwti + nwtex)) if l != None: lodval = l r['Probability'] = p r['P-Value'] = pval r['LOD'] = lodval row = dict(r.iteritems()) outrows.append(row) bonf = bonferroni(pvalues) fdr = fdr(pvalues) i = 0 for r in outrows: if r['P-Value'] != emptysym: r['Bonferroni'] = bonf[i] r['FDR'] = fdr[i] i += 1 for k in outheaders: if k not in r: r[k] = emptysym progress.stage("Output results") output.from_rows(outrows)