From bd33bed455339784c24da81ee69bf6e6334865ac Mon Sep 17 00:00:00 2001 From: Heng Li Date: Wed, 26 Jul 2017 12:03:42 -0400 Subject: [PATCH] make output better --- misc/pbsim-eval.js | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/misc/pbsim-eval.js b/misc/pbsim-eval.js index afadc40..12a5e6b 100644 --- a/misc/pbsim-eval.js +++ b/misc/pbsim-eval.js @@ -84,7 +84,7 @@ function count_err(qname, a, tot, err, mode) max = a[i][2] - a[i][1], max_i = i; if (!is_correct(s, a[max_i])) { if (max_mapq >= err_out_q) - print(qname, a[max_i].join("\t")); + print('E', qname, a[max_i].join("\t")); ++err[max_mapq]; } } @@ -114,11 +114,14 @@ if (last != null) count_err(last, a, tot, err, mode); buf.destroy(); file.close(); -if (!print_err) { - var sum_tot = 0, sum_err = 0; - for (var q = max_mapq; q >= 0; --q) { - if (tot[q] == 0) continue; - sum_tot += tot[q], sum_err += err[q]; - print(q, tot[q], err[q], sum_tot, sum_err, sum_err/sum_tot); +var sum_tot = 0, sum_err = 0, q_out = -1, sum_tot2 = 0, sum_err2 = 0; +for (var q = max_mapq; q >= 0; --q) { + if (tot[q] == 0) continue; + if (q_out < 0 || err[q] > 0) { + if (q_out >= 0) print('Q', q_out, sum_tot, sum_err, (sum_err2/sum_tot2).toFixed(9)); + sum_tot = sum_err = 0, q_out = q; } + sum_tot += tot[q], sum_err += err[q]; + sum_tot2 += tot[q], sum_err2 += err[q]; } +print('Q', q_out, sum_tot, sum_err, (sum_err2/sum_tot2).toFixed(9));