Learn R Programming

misha (version 5.11.23)

gvtrack.iterator: Defines modification rules for a one-dimensional iterator in a virtual track

Description

Defines modification rules for a one-dimensional iterator in a virtual track.

Usage

gvtrack.iterator(vtrack = NULL, dim = NULL, sshift = 0, eshift = 0)

Value

None.

Arguments

vtrack

virtual track name

dim

use 'NULL' or '0' for 1D iterators. '1' converts 2D iterator to (chrom1, start1, end1) , '2' converts 2D iterator to (chrom2, start2, end2)

sshift

shift of 'start' coordinate

eshift

shift of 'end' coordinate

Details

This function defines modification rules for one-dimensional iterator intervals in a virtual track.

'dim' converts a 2D iterator interval (chrom1, start1, end1, chrom2, start2, end2) to a 1D interval. If 'dim' is '1' the interval is converted to (chrom1, start1, end1). If 'dim' is '2' the interval is converted to (chrom2, start2, end2). If 1D iterator is used 'dim' must be set to 'NULL' or '0' (meaning: no conversion is made).

Iterator interval's 'start' coordinate is modified by adding 'sshift'. Similarly 'end' coordinate is altered by adding 'eshift'.

A shifted interval that runs past a chromosome boundary is clamped to it. If nothing is left of it - it falls entirely outside the chromosome, or the shifts collapse it to zero length - the virtual track returns 'NaN'.

See Also

gvtrack.create, gvtrack.iterator.2d

Examples

Run this code
# \dontshow{
options(gmax.processes = 2)
# }

gdb.init_examples()

gvtrack.create("vtrack1", "dense_track")
gvtrack.iterator("vtrack1", sshift = 200, eshift = 200)
gextract("dense_track", "vtrack1", gintervals(1, 0, 500))

gvtrack.create("vtrack2", "dense_track")
gvtrack.iterator("vtrack2", dim = 1)
gextract("vtrack2", gintervals.2d(1, 0, 1000, 1, 0, -1),
    iterator = "rects_track"
)

Run the code above in your browser using DataLab