element-setops: Row-wise set operations on Ranges objects

%union%R Documentation

Row-wise set operations on Ranges objects

Description

Row-wise set operations on Ranges objects

Usage

x %union% y

x %intersect% y

x %setdiff% y

between(x, y)

span(x, y)

Arguments

x, y

Ranges objects

Details

Each of these functions acts on the rows between pairs of Ranges object. The function %union%(). will return the entire range between two ranges objects assuming there are no gaps, if you would like to force gaps use span() instead. The function %intersect%() will create a new ranges object with a hit column indicating whether or not the two ranges intersect. The function %setdiff%()will return the ranges for each row in x that are not in the corresponding row of y. The function between() will return the gaps between two ranges.

Value

A Ranges object

See Also

[IRanges::punion()][IRanges::pintersect()][IRanges::pgap()][IRanges::psetdiff()]

Examples

x <- as_iranges(data.frame(start = 1:10, width = 5))
# stretch x by 3 on the right
y <- stretch(anchor_start(x), 3)
# take the rowwise union
x %union% y
# take the rowwise intersection
x %intersect% y
# asymetric difference
y %setdiff% x
x %setdiff% y
# if there are gaps between the rows of each range use span
y <- as_iranges(data.frame(start = c(20:15, 2:5),
width = c(10:15,1:4)))
# fill in the gaps and take the rowwise union
span(x,y)
# find the gaps
between(x,y)

sa-lee/plyranges documentation built on April 15, 2024, 12:25 p.m.