[Bioc-devel] non-subsettable GRanges object
Oleksii Nikolaienko
o|ek@||@n|ko|@|enko @end|ng |rom gm@||@com
Tue Apr 6 08:41:14 CEST 2021
Thanks very much, Hervé, I indeed never noticed the wrong number of
elements in my objects.
Best regards,
Oleksii
On Tue, 6 Apr 2021 at 02:10, Hervé Pagès <hpages.on.github using gmail.com> wrote:
> This is fixed in S4Vectors 0.29.13:
>
> https://github.com/Bioconductor/S4Vectors/commit/6d79932910af9618465d5f932df5864d0a270e11
>
> This new version of S4Vectors should propagate to the build machines and
> become available via BiocManager::install() in the next 48h or so.
>
> Cheers,
> H.
>
> On 4/5/21 3:40 PM, Hervé Pagès wrote:
> > Hi Oleksii,
> >
> > It looks like we have a long-standing bug in the rbind() method for
> > DataFrame objects that is somehow surfacing now. Here is a simple
> example:
> >
> > library(IRanges)
> > DF1 <- DataFrame(A=I(list(11:12, 21:23)))
> > DF2 <- DataFrame(A=IntegerList(31:34, 41:45, 51:56))
> > DF3 <- rbind(DF1, DF2)
> > DF3
> > # DataFrame with 3 rows and 1 column
> > # A
> > # <list>
> > # 1 11,12
> > # 2 21,22,23
> > # 3 31,32,33,...,41,42,43,...,51,52,53,...
> >
> > This result is wrong. We observe this in release and devel.
> >
> > If you look at the mcols of the GRanges object returned by getAMR() in
> > your code below, you'll see that it's actually an invalid DataFrame
> > object (its first column has 23 elements but 22 are expected). This is a
> > consequence of the above bug. Even though the bug has existed for a long
> > time, somehow it was not affecting your code. However this changed
> > recently because of some minor refactoring of the rbind() method for
> > DataFrame objects that I made a few days ago in S4Vectors.
> >
> > I'm working on a fix and will let you know when it's ready.
> >
> > Cheers,
> > H.
> >
> >
> > On 4/5/21 1:12 PM, Oleksii Nikolaienko wrote:
> >> Dear Bioc team,
> >> my package has started to fail during the build check (
> >> http://bioconductor.org/checkResults/devel/bioc-LATEST/ramr/). I tried
> to
> >> figure out why and it appears that I somehow make GRanges object
> >> non-subsettable. Could anyone from "GenomicRanges" developers look at my
> >> issue and advise me on a solution, please?
> >>
> >> To reproduce:
> >>
> >> library(ramr)
> >> data(ramr)
> >> amrs <- getAMR(ramr.data, ramr.samples, ramr.method="beta", min.cpgs=5,
> >> merge.window=1000, qval.cutoff=1e-3, cores=2)
> >> # this works:
> >> class(amrs)
> >> amrs
> >> # error:
> >> amrs[2]
> >> # suddenly works again:
> >> GRangesList(amrs)[[1]][2]
> >>
> >>
> >> Best regards,
> >> Oleksii
> >>
> >> [[alternative HTML version deleted]]
> >>
> >> _______________________________________________
> >> Bioc-devel using r-project.org mailing list
> >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
> >>
> >
>
> --
> Hervé Pagès
>
> Bioconductor Core Team
> hpages.on.github using gmail.com
>
[[alternative HTML version deleted]]
More information about the Bioc-devel
mailing list