makeWiggleVector {HilbertVis} | R Documentation

## generate a "wiggle vector" from start/end/value data

### Description

Given intervals in the form of a "start" and an "end" vectors and corresponding values, generate a "wiggle vector" of a given length that contains the specified values in the vector elements indicated by the intervals.

### Usage

    makeWiggleVector(start, end, value, chrlength )

### Arguments

`start` | The start coordinates of the intervals. As usual in R, these are 1-based.
`end` | The end coordinates of the intervals. As usual, the end points are included.
`value` | The values to be put in the wiggle vector. Where intervals overlap, the values are added.
`chrlength` | The desired length of the returned vector.

### Value

A vector as described above.

### Author(s)

Simon Anders, EMBL-EBI, sanders@fs.tum.de

### See Also

For a value vector containing only ones, this function acts similar as the `pileup` function in the ShortRead package.

### Examples

       intervalStarts <- c(3,10,17,22)
       intervalEnds <- c(7,13,20,26)
       values <- c(2, 1.5, .3, 4)
       chrlength <- 30
       wig <- makeWiggleVector( intervalStarts, intervalEnds, values, chrlength )
       # The same effect can be achieved with the following R code, which, however
       # is much slower:
       wig2 <- numeric(chrlength)
       for( i in 1:length(values) )
          wig2[ intervalStarts[i]:intervalEnds[i] ] <-
             wig2[ intervalStarts[i]:intervalEnds[i] ] + values[i]
       # Let's check that we got the same:
       all( wig == wig2 )

[Package HilbertVis version 1.2.0 Index]