TrimReads applies a trimming/filtering pipeline that can be highly customized by the user. The tool includes default trimmers/filters, but they could be disabled or other ones included. The order of the pipeline is the following:
- Default trimmers
- User-specified trimmers
- Default filters
- User-specified filters
This order is important, because some trimmers would not apply in some situations. For example, if the read is already trimmed in a right-most position for 5’ when it is passed to another trimmer, the 5’ is not trimmed any further. For reordering defaults, specify --disableAllDefaultTrimmers
and provide them in the new order.
Trimmers
The following trimmers could be applied in the pipeline. Click on the trimmer name to see more information.
-
CutReadTrimmer: Crops a concrete number of bases at the end of the read.
-
MottQualityTrimmer: Trims low quality ends using the Mott’s algorithm.
-
TrailingNtrimmer: Trims the end of the read containing unknown bases.
Filters
The following filters could be applied in the pipeline. Click on the filter name to see more information.
-
AlignmentAgreesWithHeaderReadFilter: Filters out reads where the alignment does not match the contents of the header
-
AllowAllReadsReadFilter: Do not filter out any read
-
AmbiguousBaseReadFilter: Filters out reads that have greater than the threshold number of N bases
-
CigarContainsNoNOperator: Filter out reads with CIGAR containing N operator
-
FirstOfPairReadFilter: Keep only reads that are first of pair
-
FragmentLengthReadFilter: Keep only read pairs with insert length less than or equal to the given value
-
GoodCigarReadFilter: Keep only reads containing good CIGAR string
-
HasReadGroupReadFilter: Filter out reads without Read Group
-
LibraryReadFilter: Keep only reads from the specified library
-
MappedReadFilter: Filter out unmapped reads
-
MappingQualityAvailableReadFilter: Filter out reads without available mapping quality
-
MappingQualityNotZeroReadFilter: Filter out reads with mapping quality equal to zero
-
MappingQualityReadFilter: Keep only reads with mapping qualities within a specified range
-
MatchingBasesAndQualsReadFilter: Filter out reads where the bases and qualities do not match
-
MateDifferentStrandReadFilter: Keep only reads with mates mapped on the different strand
-
MateOnSameContigOrNoMappedMateReadFilter: Keep only reads whose mate maps to the same contig or is unmapped
-
MetricsReadFilter: Filter out reads that fail platform quality checks, are unmapped and represent secondary/supplementary alignments
-
NonZeroFragmentLengthReadFilter: Filter out reads with fragment length different from zero
-
NonZeroReferenceLengthAlignmentReadFilter: Filter out reads that do not align to the reference
-
NotDuplicateReadFilter: Filter out reads marked as duplicate
-
NotSecondaryAlignmentReadFilter: Filter out reads representing secondary alignments
-
NotSupplementaryAlignmentReadFilter: Filter out reads representing supplementary alignments
-
OverclippedReadFilter: Filter out reads that are over-soft-clipped
-
PairedReadFilter: Filter out unpaired reads
-
PassesVendorQualityCheckReadFilter: Filter out reads failing platfor/vendor quality checks
-
PlatformReadFilter: Keep only reads with matching Read Group platform
-
PlatformUnitReadFilter: Filter out reads with matching platform unit attribute
-
PrimaryLineReadFilter: Keep only reads representing primary alignments (those that satisfy both the NotSecondaryAlignment and NotSupplementaryAlignment filters, or in terms of SAM flag values, must have neither of the 0x100 or 0x800 flags set).
-
ProperlyPairedReadFilter: Keep only reads that are properly paired
-
ReadGroupBlackListReadFilter: Keep records not matching the read group tag and exact match string.
-
ReadGroupReadFilter: Keep only reads from the specified read group
-
ReadLengthEqualsCigarLengthReadFilter: Filter out reads where the read and CIGAR do not match in length
-
ReadLengthReadFilter: Keep only reads whose length is within a certain range
-
ReadNameReadFilter: Keep only reads with this read name
-
ReadStrandFilter: Keep only reads whose strand is as specified
-
SampleReadFilter: Keep only reads for a given sample
-
SecondOfPairReadFilter: Keep only paired reads that are second of pair
-
SeqIsStoredReadFilter: Keep only reads with sequenced bases
-
ValidAlignmentEndReadFilter: Keep only reads where the read end is properly aligned
-
ValidAlignmentStartReadFilter: Keep only reads with a valid alignment start
-
WellformedReadFilter: Keep only reads that are well-formed