Hi,

I don't know about a specific function (maybe there is) so I use the following 
code to simulate ranges. 
I simplified it a bit so it might not directly run but shows the concept.

simulate.GRanges <-  function (n, mean.length, genome.size ){
 # assuming read lengths are poisson distributed around the mean length, you 
could use a different random function
 # assuming reads are uniformly distributed wrt. start position 
  ir = IRanges(start=as.integer(runif(n, min=1, max=genome.size)), 
width=rpois(n, mean.length))
  ir = restrict(ir, 1, genome.size) # cut off reads at the end, not perfect
  strand = Rle(sample(x=c("+","-", "*"), size=n, replace=TRUE)) # make some 
strand information
  gr = GRanges(ir , seqnames="chr1",
    seqlengths=genome.size,
    strand=strand, universe="Mygenome") 
  return(gr)
}

You just need to get an estimate of read-length distribution from somewhere 
then.

Hope this is useful

Michael

On Dec 2, 2010, at 4:06 PM, Anna Terry wrote:

> Hi,
> 
> Is there any function in GenomicRanges (or other package) for getting a set 
> of random ranges based on size distribution of a sample set?
> Similar functions are available in bedTools( 
> http://code.google.com/p/bedtools/wiki/Usage#shuffleBed) and Random Intervals 
> from the ENCODE tools on Galaxy.
> 
> Many Thanks
> Anna
> 
> _______________________________________________
> Bioc-sig-sequencing mailing list
> [email protected]
> https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing

_______________________________________________
Bioc-sig-sequencing mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing

Reply via email to