From 97fddb5b0d17b20d29572906a14dbea7ebb71cc5 Mon Sep 17 00:00:00 2001 From: Steffen Heyne Date: Thu, 16 Nov 2017 10:39:54 +0100 Subject: [PATCH] Fix python3 again (#68) (#69) * fix: we also need to convert the result of map to a list * now we also need to test if variable exists * fix again, now also in sample_qc_report_SE.py * fix pep8 --- shared/tools/sample_qc_report_PE.py | 23 ++++++++++++++--------- shared/tools/sample_qc_report_SE.py | 22 ++++++++++++++-------- 2 files changed, 28 insertions(+), 17 deletions(-) diff --git a/shared/tools/sample_qc_report_PE.py b/shared/tools/sample_qc_report_PE.py index 50fc8aa70..39253bb19 100755 --- a/shared/tools/sample_qc_report_PE.py +++ b/shared/tools/sample_qc_report_PE.py @@ -16,6 +16,9 @@ infile_AlignmentSummaryMetrics = sys.argv[1] # sample_name.alignment_summary_metrics.txt infile_MarkDuplicates = sys.argv[2] # sample_name.mark_duplicates_metrics.txt input_InsertSizeMetrics = sys.argv[3] + +infile_MACS2_xls = "" +infile_MACS2_qc_txt = "" try: infile_MACS2_xls = sys.argv[4] # sample_name.filtered.BAM_peaks.xls (optional) infile_MACS2_qc_txt = sys.argv[5] # ample_name.filtered.BAM_peaks.qc.txt (optional) @@ -88,17 +91,19 @@ # get peak qc from MACS2_peak_qc output ####################################### +peak_count = "NA" +frip = "NA" +peak_genome_coverage = "NA" + try: - with open(infile_MACS2_qc_txt) as f: - columns = map(lambda x: float(x), f.readlines()[1].split()) - peak_count = int(columns[0]) - frip = round(float(columns[1]), 3) - peak_genome_coverage = round(columns[2], 3) + if os.path.isfile(infile_MACS2_qc_txt): + with open(infile_MACS2_qc_txt) as f: + columns = list(map(lambda x: float(x), f.readlines()[1].split())) + peak_count = int(columns[0]) + frip = round(float(columns[1]), 3) + peak_genome_coverage = round(columns[2], 3) except OSError: - peak_count = "NA" - frip = "NA" - peak_genome_coverage = "NA" - + pass # Output to stdout ########################################################### print("{sample_name}\t{read_pairs}\t{mapped_pairs}\t{fmapped_pairs:.3f}\t{dup_mapped_pairs}\t{fdup_mapped_pairs:.3f}\t{dupfree_mapped_pairs}\t{fdupfree_mapped_pairs:.3f}\t{fhq_mapped_reads:.3f}\t{fmapped_singletons:.3f}\t{fragment_size}\t{peak_count}\t{frip}\t{peak_genome_coverage}".format( diff --git a/shared/tools/sample_qc_report_SE.py b/shared/tools/sample_qc_report_SE.py index e78ad46a0..d166bc07d 100755 --- a/shared/tools/sample_qc_report_SE.py +++ b/shared/tools/sample_qc_report_SE.py @@ -13,6 +13,9 @@ # Input files ################################################################ infile_AlignmentSummaryMetrics = sys.argv[1] # sample_name.alignment_summary_metrics.txt infile_MarkDuplicates = sys.argv[2] # sample_name.mark_duplicates_metrics.txt + +infile_MACS2_xls = "" +infile_MACS2_qc_txt = "" try: infile_MACS2_xls = sys.argv[3] # sample_name.filtered.BAM_peaks.xls (optional) infile_MACS2_qc_txt = sys.argv[4] # ample_name.filtered.BAM_peaks.qc.txt (optional) @@ -73,16 +76,19 @@ # get peak qc from MACS2_peak_qc output ####################################### +peak_count = "NA" +frip = "NA" +peak_genome_coverage = "NA" + try: - with open(infile_MACS2_qc_txt) as f: - columns = map(lambda x: float(x), f.readlines()[1].split()) - peak_count = int(columns[0]) - frip = round(float(columns[1]), 3) - peak_genome_coverage = round(columns[2], 3) + if os.path.isfile(infile_MACS2_qc_txt): + with open(infile_MACS2_qc_txt) as f: + columns = list(map(lambda x: float(x), f.readlines()[1].split())) + peak_count = int(columns[0]) + frip = round(float(columns[1]), 3) + peak_genome_coverage = round(columns[2], 3) except OSError: - peak_count = "NA" - frip = "NA" - peak_genome_coverage = "NA" + pass # Output to stdout ########################################################### print("{sample_name}\t{total_reads}\t{mapped_reads}\t{fmapped_reads:.3f}\t{dup_mapped_reads}\t{fdup_mapped_reads}\t{dupfree_mapped_reads}\t{fdupfree_mapped_reads}\t{fhq_mapped_reads:.3f}\t{fragment_size}\t{peak_count}\t{frip}\t{peak_genome_coverage}".format(