[BioC] "unexpected" result from IRanges::intersect
Patrick Aboyoun
paboyoun at fhcrc.org
Tue Aug 18 19:23:13 CEST 2009
Thanks Steve,
You did indeed find a bug, which turned out to be in the gaps method for
IRanges objects. Back on August 6th, I fixed the corner case
gaps(IRanges())
and inadvertently broke the corner case
gaps(IRanges(), start = <<int>>, end = <<int>>)
I just check in a fix to svn (IRanges version 1.3.55) that corrects this
issue.
> suppressMessages(library(IRanges))
> i1 <- IRanges(start=c(1, 10, 20), width=10)
> intersect(i1, i1)
IRanges instance:
start end width
[1] 1 29 29
> sessionInfo()
R version 2.10.0 Under development (unstable) (2009-08-05 r49073)
i386-apple-darwin9.7.0
locale:
[1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] IRanges_1.3.55
Patrick
Steve Lianoglou wrote:
> Hi,
>
> [I'm using R 2.10-devel w/ latest IRanges (version info below)]
>
> I'm a bit confused to the behavior of intersect. Namely, the
> intersection with *some* IRanges object with itself returns a 0-row
> range, but I feel like it should return itself (no matter what).
>
> Some examples:
>
> 1. if the IRange "elements" represent a contiguous range, the
> `intersect`-ion with itself is empty, but its `pintersect`-ion isn't:
>
> R> i1 <- IRanges(start=c(1, 10, 20), width=10)
> R> intersect(i1,i1)
> IRanges instance:
> [1] start end width
> <0 rows> (or 0-length row.names)
>
> R> pintersect(i1,i1)
> IRanges instance:
> start end width
> [1] 1 10 10
> [2] 10 19 10
> [3] 20 29 10
>
> 2. If the IRanges "elements" represent some disjoint range, both
> intersect and pintersect run as expected (to me):
>
> R> i2 <- IRanges(start=c(1,10,20), width=8)
> R> i2
> IRanges instance:
> start end width
> [1] 1 8 8
> [2] 10 17 8
> [3] 20 27 8
>
> R> pintersect(i2,i2)
> IRanges instance:
> start end width
> [1] 1 8 8
> [2] 10 17 8
> [3] 20 27 8
>
> Is this the expected behavior? Or is the first example in (1) a bug?
>
> Thanks,
> -steve
>
> R> > sessionInfo()
> R version 2.10.0 Under development (unstable) (2009-08-01 r49053)
> i386-apple-darwin9.7.0
>
> locale:
> [1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8
>
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
>
> other attached packages:
> [1] ShortRead_1.3.25 lattice_0.17-25 BSgenome_1.13.10
> Biostrings_2.13.32 IRanges_1.3.53 doMC_1.1.1 multicore_0.1-3
> [8] foreach_1.2.1 codetools_0.2-2 iterators_1.0.2
> ARE.utils_0.1.0
>
> loaded via a namespace (and not attached):
> [1] Biobase_2.5.5 grid_2.10.0 hwriter_1.1 tools_2.10.0
>
> --
> Steve Lianoglou
> Graduate Student: Computational Systems Biology
> | Memorial Sloan-Kettering Cancer Center
> | Weill Medical College of Cornell University
> Contact Info: http://cbio.mskcc.org/~lianos/contact
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives:
> http://news.gmane.org/gmane.science.biology.informatics.conductor
More information about the Bioconductor
mailing list