From a5def929133c457f42ddd17e6399f11083114889 Mon Sep 17 00:00:00 2001 From: Jonas Fuchs <78491186+jonas-fuchs@users.noreply.github.com> Date: Fri, 1 Dec 2023 12:46:49 +0100 Subject: [PATCH] introduced -q arg (#13) --- bamdash/command.py | 10 +++++++++- bamdash/scripts/data.py | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/bamdash/command.py b/bamdash/command.py index 38a323b..a259029 100644 --- a/bamdash/command.py +++ b/bamdash/command.py @@ -44,6 +44,14 @@ def get_args(sysargs): metavar=" ", help="seq reference id" ) + parser.add_argument( + "-q", + "--quality-threshold", + type=int, + default=15, + metavar="15", + help="qaulity threshold for reads" + ) parser.add_argument( "-bs", "--binsize", @@ -121,7 +129,7 @@ def main(sysargs=sys.argv[1:]): args = get_args(sysargs) # define subplot number, track heights and parse data - coverage_df, title = data.bam_to_coverage_df(args.bam, args.reference, args.coverage) + coverage_df, title = data.bam_to_coverage_df(args.bam, args.reference, args.coverage, args.quality_threshold) track_heights = [1] track_data = [] # extract data and check if ref was found diff --git a/bamdash/scripts/data.py b/bamdash/scripts/data.py index 054f059..7712e34 100644 --- a/bamdash/scripts/data.py +++ b/bamdash/scripts/data.py @@ -63,7 +63,7 @@ def make_title_string(parsed_bam, coverage_df, reference, min_cov): return stat_string -def bam_to_coverage_df(bam_file, ref, min_cov): +def bam_to_coverage_df(bam_file, ref, min_cov, quality_thres): """ :param bam_file: bam location :param ref: chrom identifier @@ -75,7 +75,7 @@ def bam_to_coverage_df(bam_file, ref, min_cov): coverage, position = [], [] # count coverage at each pos - coverage_base = bam.count_coverage(ref) + coverage_base = bam.count_coverage(ref, quality_threshold=quality_thres) # extract overall coverage and pos for index, [A_count, C_count, G_count, T_count] in enumerate( zip(coverage_base[0], coverage_base[1], coverage_base[2], coverage_base[3])):