SummarizedExperiment was just an example. I agree it can be a little challenging for end users to know where to find a particular functionality but I'm not sure about using "meta" packages to address that. At least I feel we should probably avoid creating new "meta" packages out of the blue, with arbitrary limits and possibly endless discussions about what exactly goes in them. Also I don't think there is a single "core" but rather several domain-specific cores.
What about using the existing workflow packages instead? A workflow package (like the variants package here http://bioconductor.org/help/workflows/variants/) covers a specific domain and loading it should load the "core" for that domain. Plus the user gets a great vignette as a bonus to get started so it's not just an empty shell. There are probably some shortcomings with workflow packages that would need to be addressed before they can serve as convenient "meta" packages though e.g. they're treated too differently from other BioC packages (e.g. they're not available via biocLite() and don't show up under the biocViews tree here http://bioconductor.org/packages/release/BiocViews.html). Nothing that seems impossible to address though... H. On 05/12/2015 03:22 PM, Michael Lawrence wrote:
It's more general than SummarizedExperiment. I think people would appreciate a simple way to load the core, without having to remember, for example, that VCF reading is in VariantAnnotation. On Mon, May 11, 2015 at 9:51 PM, Hervé Pagès <hpa...@fredhutch.org <mailto:hpa...@fredhutch.org>> wrote: Hi Michael, On 05/11/2015 05:35 PM, Michael Lawrence wrote: Splitting stuff into different packages is good for modularity, but tough on the mind of the user. What about having some sort of "meta" package that simply loads the core infrastructure packages? Named something simple like "Genomics" or "GenomicsCore". Don't know if we need this. For example, for all the SummarizedExperiment use cases I ran into, the end-user generally only needs to load the corresponding high-level package (DESeq2, VariantAnnotation, minfi, GenomicAlignments, etc...) and that takes care of loading all the low-level infrastructure packages. H. On Mon, May 11, 2015 at 5:10 PM, Hervé Pagès <hpa...@fredhutch.org <mailto:hpa...@fredhutch.org> <mailto:hpa...@fredhutch.org <mailto:hpa...@fredhutch.org>>> wrote: Hi Tim, The SummarizedExperiment class is being replaced with the RangedSummarizedExperiment class from the new SummarizedExperiment package. This is a work-in-progress and the name and internal representation of the RangedSummarizedExperiment class are not finalized yet. The main goal for now is to move all the SummarizedExperiment stuff from GenomicRanges to its own package. Anyway, metadata() is the replacement for exptData() on RangedSummarizedExperiment objects. It's on my list to add an exptData method for backward compatibility. Cheers, H. On 05/11/2015 04:37 PM, Tim Triche, Jr. wrote: who determined that breaking this would be a good idea?!? R> ?SummarizedExperiment Help on topic 'SummarizedExperiment' was found in the following packages: Package Library GenomicRanges /home/tim/R/x86_64-pc-linux-gnu-library/3.2 SummarizedExperiment /home/tim/R/x86_64-pc-linux-gnu-library/3.2 R> nrows <- 200; ncols <- 6 R> counts <- matrix(runif(nrows * ncols, 1, 1e4), nrows) R> rowRanges <- GRanges(rep(c("chr1", "chr2"), c(50, 150)), + IRanges(floor(runif(200, 1e5, 1e6)), width=100), + strand=sample(c("+", "-"), 200, TRUE)) R> colData <- DataFrame(Treatment=rep(c("ChIP", "Input"), 3), + row.names=LETTERS[1:6]) R> sset <- SummarizedExperiment(assays=SimpleList(counts=counts), + rowRanges=rowRanges, colData=colData) R> sset class: RangedSummarizedExperiment dim: 200 6 metadata(0): assays(1): counts rownames: NULL rowRanges metadata column names(0): colnames(6): A B ... E F colData names(1): Treatment R> assayNames(sset) [1] "counts" R> assays(sset) <- endoapply(assays(sset), asinh) R> head(assay(sset)) A B C D E F [1,] 6.89 8.81 9.46 9.20 8.88 9.44 [2,] 5.07 9.70 4.08 7.47 8.91 5.64 [3,] 9.88 9.84 8.95 9.07 9.86 9.06 [4,] 9.89 8.88 8.92 8.05 8.46 9.51 [5,] 9.75 8.48 4.73 9.86 8.43 9.86 [6,] 9.29 9.13 9.80 9.77 9.50 8.40 R> exptData(sset) Error in (function (classes, fdef, mtable) : unable to find an inherited method for function 'exptData' for signature '"RangedSummarizedExperiment"' It's one of those things that's a handy place to put data when you need to carry it around for the same set of people/subjects but don't have a handy multidimensional container for it. So it's a bit of a drag that it now breaks... Bonus: R> ?"exptData,SummarizedExperiment-method" SummarizedExperiment-class package:GenomicRanges R Documentation SummarizedExperiment instances Description: The SummarizedExperiment class is a matrix-like container where rows represent ranges of interest (as a 'GRanges or GRangesList-class') and columns represent samples (with sample data summarized as a 'DataFrame-class'). A 'SummarizedExperiment' contains one or more assays, each represented by a matrix-like object of numeric or other mode. R> sessionInfo() R version 3.2.0 (2015-04-16) Platform: x86_64-pc-linux-gnu (64-bit) Running under: Ubuntu 15.04 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] grid stats4 parallel stats graphics grDevices datasets [8] utils methods base other attached packages: [1] disintegrator_0.4.8 vegan_2.2-1 [3] permute_0.8-3 CCAGFA_1.0.4 [5] FEM_2.3.0 org.Hs.eg.db_3.1.2 [7] igraph_0.7.1 corrplot_0.73 [9] marray_1.47.0 AnnotationDbi_1.31.6 [11] MotifDb_1.10.0 PWMEnrich_4.5.0 [13] SCAN.UPC_2.10.0 sva_3.15.0 [15] genefilter_1.51.0 mgcv_1.8-6 [17] nlme_3.1-120 affyio_1.37.0 [19] affy_1.47.0 oligo_1.33.0 [21] oligoClasses_1.31.0 SRAdb_1.23.0 [23] RCurl_1.95-4.6 bitops_1.0-6 [25] graph_1.47.0 quadprog_1.5-5 [27] mclust_5.0.1 ConsensusClusterPlus_1.23.0 [29] simulatorZ_1.5.1 CoxBoost_1.4 [31] prodlim_1.5.1 rsig_1.0 [33] survival_2.38-1 DMRcate_1.5.42 [35] matrixStats_0.14.0 rtracklayer_1.29.5 [37] Matrix_1.2-0 qvalue_2.1.0 [39] impute_1.43.0 DMRcatedata_1.5.0 [41] minfi_1.15.3 bumphunter_1.8.0 [43] locfit_1.5-9.1 iterators_1.0.7 [45] foreach_1.4.2 Biostrings_2.37.2 [47] XVector_0.9.1 SummarizedExperiment_0.1.1 [49] GenomicRanges_1.21.9 GenomeInfoDb_1.5.2 [51] IRanges_2.3.8 S4Vectors_0.7.2 [53] lattice_0.20-31 limma_3.25.3 [55] ks_1.9.4 rgl_0.95.1247 [57] mvtnorm_1.0-2 misc3d_0.8-4 [59] KernSmooth_2.23-14 dplyr_0.4.1 [61] GEOmetadb_1.29.0 RSQLite_1.0.0 [63] DBI_0.3.1 GEOquery_2.35.4 [65] Biobase_2.29.1 BiocGenerics_0.15.0 [67] bigrquery_0.1.0.9000 BiocInstaller_1.19.5 [69] magrittr_1.5 gtools_3.4.2 loaded via a namespace (and not attached): [1] Hmisc_3.16-0 plyr_1.8.2 splines_3.2.0 [4] BiocParallel_1.3.9 ggplot2_1.0.1 digest_0.6.8 [7] SuppDists_1.1-9.1 gdata_2.16.1 GMD_0.3.3 [10] checkmate_1.5.2 BBmisc_1.9 cluster_2.0.1 [13] annotate_1.47.0 siggenes_1.43.0 colorspace_1.2-6 [16] tcltk_3.2.0 registry_0.2 gtable_0.1.2 [19] zlibbioc_1.15.0 RGCCA_2.0 evd_2.3-0 [22] scales_0.2.4 futile.options_1.0.0 pheatmap_1.0.2 [25] rngtools_1.2.4 Rcpp_0.11.6 xtable_1.7-4 [28] foreign_0.8-63 bit_1.1-12 preprocessCore_1.31.0 [31] Formula_1.2-1 lava_1.4.0 glmnet_2.0-2 [34] httr_0.6.1 gplots_2.17.0 RColorBrewer_1.1-2 [37] acepack_1.3-3.3 ff_2.2-13 reshape_0.8.5 [40] XML_3.98-1.1 nnet_7.3-9 reshape2_1.4.1 [43] munsell_0.4.2 tools_3.2.0 stringr_1.0.0 [46] bootstrap_2015.2 beanplot_1.2 caTools_1.17.1 [49] doRNG_1.6 nor1mix_1.2-0 biomaRt_2.25.1 [52] stringi_0.4-1 superpc_1.09 futile.logger_1.4.1 [55] GenomicFeatures_1.21.2 survcomp_1.19.0 gbm_2.1.1 [58] survivalROC_1.0.3 multtest_2.25.0 R6_2.0.1 [61] latticeExtra_0.6-26 gridExtra_0.9.1 affxparser_1.41.2 [64] codetools_0.2-11 lambda.r_1.1.7 seqLogo_1.35.0 [67] MASS_7.3-40 assertthat_0.1 proto_0.3-10 [70] pkgmaker_0.22 GenomicAlignments_1.5.8 Rsamtools_1.21.4 [73] mixOmics_5.0-4 rpart_4.1-9 base64_1.1 [76] illuminaio_0.11.0 rmeta_2.16 Statistics is the grammar of science. Karl Pearson <http://en.wikipedia.org/wiki/The_Grammar_of_Science> [[alternative HTML version deleted]] _______________________________________________ Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org> <mailto:Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>> mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel -- 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: hpa...@fredhutch.org <mailto:hpa...@fredhutch.org> <mailto:hpa...@fredhutch.org <mailto:hpa...@fredhutch.org>> Phone: (206) 667-5791 <tel:%28206%29%20667-5791> <tel:%28206%29%20667-5791> Fax: (206) 667-1319 <tel:%28206%29%20667-1319> <tel:%28206%29%20667-1319> _______________________________________________ Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org> <mailto:Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>> mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel -- 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: hpa...@fredhutch.org <mailto:hpa...@fredhutch.org> Phone: (206) 667-5791 <tel:%28206%29%20667-5791> Fax: (206) 667-1319 <tel:%28206%29%20667-1319>
-- 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: hpa...@fredhutch.org Phone: (206) 667-5791 Fax: (206) 667-1319 _______________________________________________ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel