flank_left {plyranges} | R Documentation

## Generate flanking regions

### Description

Find flanking regions to the left or right or upstream or downstream of a Ranges object.

### Usage

    flank_left(x, width = 0L)

    flank_right(x, width = 0L)

    flank_upstream(x, width = 0L)

    flank_downstream(x, width = 0L)

### Arguments

`x` | a Ranges object.
`width` | the width of the flanking region relative to the ranges in `x`. Either an integer vector of length 1 or an integer vector the same length as x. The width can be negative in which case the flanking region is reversed.

### Details

The function `flank_left` will create the flanking region to the left of starting coordinates in `x`, while `flank_right` will create the flanking region to the right of the starting coordinates in `x`. The function `flank_upstream` will `flank_left` if the strand of rows in `x` is not negative and will `flank_right` if the strand of rows in `x` is negative. The function `flank_downstream` will `flank_right` if the strand of rows in `x` is not negative and will `flank_leftt` if the strand of rows in `x` is negative.

By default `flank_left` and `flank_right` will ignore strandedness of any ranges, while `flank_upstream` and `flank_downstream` will take into account the strand of `x`.

### Value

A Ranges object of same length as `x`.

### See Also

`IRanges::flank()`, `GenomicRanges::flank()`

### Examples

    gr <- as_granges(data.frame(start = 10:15,
                                width = 5,
                                seqnames = "seq1",
                                strand = c("+", "+", "-", "-", "+", "*")))
    flank_left(gr, width = 5L)
    flank_right(gr, width = 5L)
    flank_upstream(gr, width = 5L)
    flank_downstream(gr, width = 5L)

[Package plyranges version 1.14.0 Index]