[Bioc-devel] Why be default 'D' is not dropped from coverage?

Leonardo Collado Torres lcollado at jhu.edu
Sat Oct 18 19:50:26 CEST 2014


A collaborator of mine is working on a new software and we while we were
doing a sanity check to compare the base-level coverage from BAM files and
bigWig files generated from his software we realized that by default bases
corresponding to a 'D' on the CIGAR string get counted when reading
coverage from BAM files.

That is:

> getMethod('coverage', 'GAlignments')
Method Definition:

function (x, shift = 0L, width = NULL, weight = 1L, ...)
    .local <- function (x, shift = 0L, width = NULL, weight = 1L,
        method = c("auto", "sort", "hash"), drop.D.ranges = FALSE)
    coverage(grglist(x, drop.D.ranges = drop.D.ranges), shift = shift,
        width = width, weight = weight, method = method)
    .local(x, shift, width, weight, ...)
<environment: namespace:GenomicAlignments>

target  "GAlignments"
defined "GAlignments"
> packageVersion('GenomicAlignments')
[1] ‘1.2.0’

You can see that this is default elsewhere, for example:

> extractAlignmentRangesOnReference
function (cigar, pos = 1L, drop.D.ranges = FALSE, f = NULL)
    if (!isTRUEorFALSE(drop.D.ranges))
        stop("'drop.D.ranges' must be TRUE or FALSE")
    if (drop.D.ranges) {
        ops <- c("M", "=", "X", "I")
    else {
        ops <- c("M", "=", "X", "I", "D")
    cigarRangesAlongReferenceSpace(cigar, flag = NULL, pos = pos,
        f = f, ops = ops, drop.empty.ranges = FALSE, reduce.ranges = TRUE)
<environment: namespace:GenomicAlignments>

What is the rationale for setting `drop.D.ranges` by default to FALSE?


	[[alternative HTML version deleted]]

More information about the Bioc-devel mailing list