Skip to content
Back to formatted view

Raw Message

Message-ID: <CAOQ5NyccTk_1_+iDobk2o_41T-zq7VeT9GQ6ANEdyBHvX77+Jw@mail.gmail.com>
Date: 2018-05-14T15:01:55Z
From: Michael Lawrence
Subject: [Bioc-devel] GenomicRanges List subclass and apply
In-Reply-To: <5AF9A393.10506@jhu.edu>

It's possible that you could vectorize this code. Maybe open an issue
on the support site.

On Mon, May 14, 2018 at 7:56 AM, Jack Fu <jfu14 at jhu.edu> wrote:
> Hi Michael,
>
> Mostly for sending each element of the GRanges object to a custom function
> that runs an identical analysis on each element.
> I have some functions that take as input a single range -> calculate number
> of reads that overlap the range -> subset the range into K number of
> segments based on coverage patterns across the range.
>
> Thanks!
> Jack
>
>
> Michael Lawrence wrote:
>
> Just out of curiosity, why are you looping over a GRanges in the first
> place?
>
> On Mon, May 14, 2018 at 7:28 AM, Jack Fu <jfu14 at jhu.edu> wrote:
>
> Hey all,
>
> I think some of the recent changes to GRanges has affected using the
> apply class functions with GRanges objects:
>
>   o GenomicRanges now is a List subclass. This means that GRanges objects
>        and their derivatives are now considered list-like objects (even
> though
>        [[ don't work on them yet, this will be implemented in Bioconductor
> 3.8).
>
>
> The following code will throw:
> gr <- GRanges(1, IRanges(1:2, 3:4))
> sapply(gr, print)
>
> Error in (function (classes, fdef, mtable)  :
>    unable to find an inherited method for function 'getListElement' for
> signature '"GRanges"'
>
> Access using gr[1], gr[1:2] still works normally.
> Are there any recommendations on a workaround for this issue without
> resorting back to for loops?
>
> Thanks all,
> Jack
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
>
>