Range OperationsΒΆ
This section will describe additional GRanges operations provided by gUtils.
## make some example data sets
ref19 <- readRDS(system.file("extdata","refGene.hg19.gr.rds", package="gUtils"))
gr <- GRanges(1, IRanges(c(2,5,10), c(4,9,16)), seqinfo=Seqinfo("1", 20))
gr2 <- c(gr, GRanges(1, IRanges(c(1,9), c(6,14)), seqinfo=Seqinfo("1", 20)))
dt <- data.table(seqnames=1, start=c(2,5,10), end=c(3,8,15))
shift(gr, 2)
flank(gr, width=2)
gr.start(gr, width=3)
gr.end(gr, width=3)
gr.mid(gr) + 2
grbind
## add metadata to one field
mcols(gr)$score = 3
## try to concatenate
c(gr,gr2) ## ERROR
## with grbind
grbind(gr, gr2) ## SUCCESS. Adds NA for missing fields
## GenomicRanges::c does this already for GRangesList
streduce(gr2)
gr.sample(gr2, 2, len=2, replace=TRUE)
## output GRanges
GRanges object with 3 ranges and 1 metadata column:
seqnames ranges strand | query.id
<Rle> <IRanges> <Rle> | <integer>
[1] 1 [ 8, 9] * | 2
[2] 1 [ 5, 6] * | 2
[3] 1 [11, 12] * | 3
gr.rand(w=c(2,5,3), seqinfo(gr))
gr.simplify
gr.tile(GRanges(1, IRanges(1,9)), w=3) + 1
gr.refactor
gr.tile.map
gr.round