Может ли mclapply работать с CompressedRleList?
Может ли mclapply работать с CompressedRleList?
Например, у меня есть вектор сигары (а), а cigarToRleList возвращает CompressedRleList для данного вектора:
a = c("44M","44M","9S35M","44M","40M4S")
b = cigarToRleList(a)
Если я пытаюсь запустить mclapply на b, я получаю эту ошибку:
mclapply(b,function(x) class(x))
Error in as.list.default(X) :
no method for coercing this S4 class to a vector
Принуждение b к списку, кажется, не помогает, поскольку этот список имеет длину 1:
mclapply(list(b),function(x) class(x))
[[1]]
[1] "CompressedRleList"
attr(,"package")
[1] "IRanges"
Любая идея, как заставить mclapply работать со структурой CompressedRleList?
1 ответ
Решение
Это вопрос Биокондуктора, поэтому его следует адресовать в список рассылки Биокондуктора. В прошлом были проблемы, поэтому предоставьте вывод sessionInfo()
; Я считаю, что с нынешним биоком это работает; это с
> 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