From d368f5e3e131dba419c7ccba92ebfc163c82e024 Mon Sep 17 00:00:00 2001 From: Fengchao Date: Wed, 4 Oct 2017 15:27:35 +0800 Subject: [PATCH] Fix a bug when there is no result. --- src/main/java/proteomics/ECL2.java | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/java/proteomics/ECL2.java b/src/main/java/proteomics/ECL2.java index b5dc4bd..8a0be62 100644 --- a/src/main/java/proteomics/ECL2.java +++ b/src/main/java/proteomics/ECL2.java @@ -194,12 +194,19 @@ public static void main(String[] args) { // save result logger.info("Estimating q-value..."); List> picked_result = pickResult(final_search_results); - CalFDR cal_fdr_obj = new CalFDR(picked_result.get(0), cal_evalue); - List intra_result = cal_fdr_obj.includeStats(cal_evalue); - intra_result.sort(Collections.reverseOrder()); - cal_fdr_obj = new CalFDR(picked_result.get(1), cal_evalue); - List inter_result = cal_fdr_obj.includeStats(cal_evalue); - inter_result.sort(Collections.reverseOrder()); + List intra_result = new LinkedList<>(); + List inter_result = new LinkedList<>(); + if (!picked_result.get(0).isEmpty()) { + CalFDR cal_fdr_obj = new CalFDR(picked_result.get(0), cal_evalue); + intra_result = cal_fdr_obj.includeStats(cal_evalue); + intra_result.sort(Collections.reverseOrder()); + } + if (!picked_result.get(1).isEmpty()) { + CalFDR cal_fdr_obj = new CalFDR(picked_result.get(1), cal_evalue); + inter_result = cal_fdr_obj.includeStats(cal_evalue); + inter_result.sort(Collections.reverseOrder()); + } + logger.info("Saving results..."); saveTargetResult(intra_result, build_index_obj.getProAnnotateMap(), spectra_path, true, cal_evalue); saveTargetResult(inter_result, build_index_obj.getProAnnotateMap(), spectra_path, false, cal_evalue);