1

Can mclapply work with a CompressedRleList?

For example, I have a vector of cigars (a), and the cigarToRleList returns CompressedRleList given that vector:

a = c("44M","44M","9S35M","44M","40M4S")
b = cigarToRleList(a)

If I try to run mclapply on b I get this error:

mclapply(b,function(x) class(x))
Error in as.list.default(X) : 
  no method for coercing this S4 class to a vector

Coercing b to a list doesn't seem to help as this list is of length 1:

mclapply(list(b),function(x) class(x))
[[1]]
[1] "CompressedRleList"
attr(,"package")
[1] "IRanges"

Any idea how to get mclapply work with the CompressedRleList structure?

4

1 回答 1

2

这是一个 Bioconductor 问题,因此应发送至Bioconductor邮件列表。过去有问题,所以提供输出sessionInfo();我相信目前的 Bioc 是可行的;它与

> library(GenomicRanges)
> library(parallel)
> a = c("44M","44M","9S35M","44M","40M4S")
> b = cigarToRleList(a)
> unlist(mclapply(b, class))
[1] "Rle" "Rle" "Rle" "Rle" "Rle"
> sessionInfo()
R version 3.0.2 RC (2013-09-23 r63972)
Platform: x86_64-unknown-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods  
[8] base     

other attached packages:
[1] GenomicRanges_1.12.5 IRanges_1.18.3       BiocGenerics_0.6.0  

loaded via a namespace (and not attached):
[1] stats4_3.0.2


library(GenomicRanges)
library(parallel)
> unlist(mclapply(b, class))
[1] "Rle" "Rle" "Rle" "Rle" "Rle"
> sessionInfo()
R version 3.0.2 RC (2013-09-23 r63972)
Platform: x86_64-unknown-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] parallel  stats     graphics  grDevices utils     datasets  methods  
[8] base     

other attached packages:
[1] GenomicRanges_1.12.5 IRanges_1.18.3       BiocGenerics_0.6.0  

loaded via a namespace (and not attached):
[1] stats4_3.0.2
于 2013-09-27T18:01:37.790 回答