Module: BioDSL::Trim
- Included in:
- Seq
- Defined in:
- lib/BioDSL/seq/trim.rb
Overview
Module containing methods for end trimming sequences with suboptimal quality scores.
Instance Method Summary collapse
-
#quality_trim(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from both ends until a run of min_len residues with quality scores above min_qual is encountered.
-
#quality_trim!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from both ends until a run of min_len residues with quality scores above min_qual is encountered.
-
#quality_trim_left(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the left end until a run of min_len residues with quality scores above min_qual is encountered.
-
#quality_trim_left!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the left end until a run of min_len residues with quality scores above min_qual is encountered.
-
#quality_trim_right(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the right end until a run of min_len residues with quality scores above min_qual is encountered.
-
#quality_trim_right!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the right end until a run of min_len residues with quality scores above min_qual is encountered.
Instance Method Details
#quality_trim(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from both ends until a run of min_len residues with quality scores above min_qual is encountered.
79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/BioDSL/seq/trim.rb', line 79 def quality_trim(min_qual, min_len = 1) check_trim_args(min_qual, min_len) pos_right = trim_right_pos_c(@qual, length, min_qual, min_len, Seq::SCORE_BASE) pos_left = trim_left_pos_c(@qual, length, min_qual, min_len, Seq::SCORE_BASE) pos_left = pos_right if pos_left > pos_right self[pos_left...pos_right] end |
#quality_trim!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from both ends until a run of min_len residues with quality scores above min_qual is encountered.
94 95 96 97 98 99 |
# File 'lib/BioDSL/seq/trim.rb', line 94 def quality_trim!(min_qual, min_len = 1) subseq = quality_trim(min_qual, min_len) self.seq = subseq.seq @qual = subseq.qual self end |
#quality_trim_left(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the left end until a run of min_len residues with quality scores above min_qual is encountered.
59 60 61 62 63 64 65 |
# File 'lib/BioDSL/seq/trim.rb', line 59 def quality_trim_left(min_qual, min_len = 1) check_trim_args(min_qual, min_len) pos = trim_left_pos_c(@qual, length, min_qual, min_len, Seq::SCORE_BASE) self[pos..length] end |
#quality_trim_left!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the left end until a run of min_len residues with quality scores above min_qual is encountered.
70 71 72 73 74 75 |
# File 'lib/BioDSL/seq/trim.rb', line 70 def quality_trim_left!(min_qual, min_len = 1) subseq = quality_trim_left(min_qual, min_len) self.seq = subseq.seq @qual = subseq.qual self end |
#quality_trim_right(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the right end until a run of min_len residues with quality scores above min_qual is encountered.
38 39 40 41 42 43 44 |
# File 'lib/BioDSL/seq/trim.rb', line 38 def quality_trim_right(min_qual, min_len = 1) check_trim_args(min_qual, min_len) pos = trim_right_pos_c(@qual, length, min_qual, min_len, Seq::SCORE_BASE) self[0..pos] end |
#quality_trim_right!(min_qual, min_len = 1) ⇒ Object
Method to progressively trim a Seq object sequence from the right end until a run of min_len residues with quality scores above min_qual is encountered.
49 50 51 52 53 54 |
# File 'lib/BioDSL/seq/trim.rb', line 49 def quality_trim_right!(min_qual, min_len = 1) subseq = quality_trim_right(min_qual, min_len) self.seq = subseq.seq @qual = subseq.qual self end |