[Bioc-devel] as.list fails on IRanges inside of lapply(<IRanges>, blah)

Hervé Pagès hpages at fredhutch.org
Tue Feb 20 19:48:36 CET 2018


Hi Gabe,

I made a couple of changes to genbankr (1.7.2) to avoid those looping
e.g. I replaced things like

     sapply(gr, width)

with

     width(gr)

I can't run a full 'R CMD build' + 'R CMD check' on the package though
because the code in the vignette seems to fail for reasons unrelated
to the recent changes to IRanges / GenomicRanges (I get the same error
with the release version, see release build report).

The previous behavior of as.list() on IRanges ans GRanges objects will
be restored (with a deprecation warning) once all the packages that
need a fix get one (only 7 packages left on my list). I should be done
with them in the next couple of days.

H.

On 02/20/2018 09:41 AM, Gabe Becker wrote:
> All,
> 
> I'm trying to track down the new failure in my genbankr package and it
> appears to come down to the fact  that i'm trying to lapply over an
> IRanges, which fails in the IRanges to list (or List?) conversion. The
> particular case that fails in my example is an IRanges of length 1 but that
> does not appear to matter, as lapply fails over IRanges of length >1 as
> well.
> 
> Is this intentional? If so, it seems a change of this magnitude would
> warrant a deprecation cycle at least. If not, please let me know so I can
> leave the code as is and wait for the fix.
> 
>> rng1 = IRanges(start = 1, end = 5)
> 
>> rng2 = IRanges(start = c(1, 7), end = c(3, 10))
> 
>> rng1
> 
> IRanges object with 1 range and 0 metadata columns:
> 
>            start       end     width
> 
>        <integer> <integer> <integer>
> 
>    [1]         1         5         5
> 
>> rng2
> 
> IRanges object with 2 ranges and 0 metadata columns:
> 
>            start       end     width
> 
>        <integer> <integer> <integer>
> 
>    [1]         1         3         3
> 
>    [2]         7        10         4
> 
>> lapply(rng1, identity)
> 
> *Error in (function (classes, fdef, mtable)  : *
> 
> *  unable to find an inherited method for function ‘getListElement’ for
> signature ‘"IRanges"’*
> 
>> lapply(rng2, identity)
> 
> *Error in (function (classes, fdef, mtable)  : *
> 
> *  unable to find an inherited method for function ‘getListElement’ for
> signature ‘"IRanges"’*
> 
>> sessionInfo()
> 
> R Under development (unstable) (2018-02-16 r74263)
> 
> Platform: x86_64-apple-darwin15.6.0 (64-bit)
> 
> Running under: OS X El Capitan 10.11.6
> 
> 
> Matrix products: default
> 
> BLAS:
> /Users/beckerg4/local/Rdevel/R.framework/Versions/3.5/Resources/lib/libRblas.dylib
> 
> LAPACK:
> /Users/beckerg4/local/Rdevel/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
> 
> 
> locale:
> 
> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
> 
> 
> attached base packages:
> 
> [1] stats4    parallel  stats     graphics  grDevices utils     datasets
> 
> [8] methods   base
> 
> 
> other attached packages:
> 
> *[1] IRanges_2.13.26     S4Vectors_0.17.33   BiocGenerics_0.25.3*
> 
> 
> loaded via a namespace (and not attached):
> 
> [1] compiler_3.5.0 tools_3.5.0
> 
> 
> 
> Best,
> ~G
> 
> 
> 

-- 
Hervé Pagès

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M1-B514
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: hpages at fredhutch.org
Phone:  (206) 667-5791
Fax:    (206) 667-1319



More information about the Bioc-devel mailing list