Feature request: syntax for dropping unused seqlevels in GRanges objects
2
0
Entering edit mode
@charles-plessy-7857
Last seen 6 weeks ago
Japan

Hello,

it would be great if one could write things such as gr <- droplevels(gr) or gr <- gr[seqnames(gr) = foo, drop = TRUE], where gr would be a GRanges object.

Search engines report that it has already been discussed at least once in the past, and no roadblock was mentioned.

My use case is that I am making coverage analysis with commands such as GRanges(coverage(gr)) ; gr <- gr[score(gr) > 0], and it fails with the following error if the gr object has unused seqlevels because it was filtered before.

Error in .normargSeqlengths(value, seqnames(x)) :
length of supplied 'seqlengths' must equal the number of sequences
granges seqlevels feature request • 1.4k views
2
Entering edit mode
@herve-pages-1542
Last seen 4 hours ago
Seattle, WA, United States

Hi,

See the examples in ?seqlevels. The "A. MODIFY THE SEQLEVELS OF A GRanges OBJECT" section has an example that shows you exactly how to drop all unused seqlevels.

Cheers,

H.

PS: This post your refer to is from 2010 and from the Bioc-sig-seq mailing list. Note that this list was shut down many years ago. The Bioconductor software has changed/improved a lot since then.

0
Entering edit mode
@storybenjamin-11722
Last seen 16 hours ago
Germany
 ## Drop all unused seqlevels:
seqlevels(gr) <- seqlevelsInUse(gr)