Entering edit mode
Hi,
The following shows that do.call of `c` on a list of IRangesList
returns "list" only when the list is named.
> library(IRanges)
>example(IRangesList)
> class(x)
[1] "CompressedIRangesList"
attr(,"package")
[1] "IRanges"
> class(do.call(c,list(x1=x,x2=x)))
[1] "list"
I am confused this.
I would not expect the fact that the list is named to have any impact
on the result.
But, look, omitting the list names the class is now an IRangesList
> class(do.call(c,list(x,x)))
[1] "CompressedIRangesList"
attr(,"package")
[1] "IRanges"
> class(c(x,x))
[1] "CompressedIRangesList"
attr(,"package")
[1] "IRanges"
A 'workaround' is to unname the list, as demonstrated:
> class(do.call(c,unname(list(x1=x,x2=x))))
[1] "CompressedIRangesList"
attr(,"package")
[1] "IRanges"
But, why does having a 'names' attribute effect the behavior of
do.calling `c` so much as to change the class returned?
Thanks for your help/education.....
Malcolm Cook
Computational Biology - Stowers Institute for Medical Research
> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
locale:
[1] C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] IRanges_1.16.4 BiocGenerics_0.4.0
loaded via a namespace (and not attached):
[1] AnnotationDbi_1.20.3 BSgenome_1.26.1 Biobase_2.18.0
Biostrings_2.26.2 DBI_0.2-5 GenomicFeatures_1.10.1
GenomicRanges_1.10.5 RCurl_1.95-3 RSQLite_0.11.2
Rsamtools_1.10.2 XML_3.95-0.1 biomaRt_2.14.0
bitops_1.0-4.2 colorspace_1.2-0 data.table_1.8.6
functional_0.1 graph_1.36.1 gtools_2.7.0
parallel_2.15.1 rtracklayer_1.18.1 stats4_2.15.1
tools_2.15.1 zlibbioc_1.4.0
>