Entering edit mode
13.2 years ago
User 9996
▴
840
how can I count the number of BAM reads falling directly within a set of intervals, given in a GFF format? Note that I do not want reads overlapping the intervals, but ones that fall directly within them.
I tried the following:
intersectBed -abam reads.bam -b exons.gff -wb -f 1
this has redundancies, so I pipe it into coverageBed as follows:
intersectBed -abam reads.bam -b exons.gff -wb -f 1 | coverageBed -abam stdin -b exons.gff
Is this correct? Thanks.
Yes, that is correct. I suggest using version 2.13.1 and use the -counts option in coverageBed. This will use less memory and run much more quickly than the default coverageBed.
Both BAM (not SAM, which is 1-based) and BED are zero-based, half open. BEDTools handles this automatically anyway.
is there a caveat about 0-based versus 1-based coordinates of SAM and BED format?
How can this be extended to get all mapped pairs that land in the boundaries of a certain intervals from BAM?