Thanks Tim

We are collecting relevant resources in

https://github.com/vjcitn/biocMultiAssay

I will add your class definition as TTMergedDataSet

we have some TCGA data (affy expression, RNA seq, miRNA) in inst/extdata
from Levi Waldron.  Currently
these are all ExpressionSet instances.  I will shortly commit enough so
that the implied package installs.

Finally, it is our plan to create a multiAssay SIG mailing list for further
discussion; it will be publicized
after a bit more development.  I will be sure you are on the initial SIG
list.

On Wed, Jul 24, 2013 at 10:43 PM, Tim Triche, Jr. <tim.tri...@gmail.com>wrote:

> just for those who were interested, here is what I bolted together a LONG
> time ago
>
> warning: this will probably burn your retinas with its  badness.  also, no
> refclasses for colData that pertains across the child SummarizedExperiments
> (doh)
>
>
> require(GenomicRanges) ## ensure that SummarizedExperiment has been
> declared
>
> setClassUnion("SummarizedExperimentOrNULL",c("SummarizedExperiment","NULL"))
>
> ## slots: exprData, methData, geneData, exonData, lincData, mirData,
> cnvData
> setClass("MergedDataSet", contains=c("eSet"), # {{{
>          representation=representation(
>            exprData="SummarizedExperimentOrNULL",   # exprs, pvals?
>            methData="SummarizedExperimentOrNULL",   # betas, totals
>            geneData="SummarizedExperimentOrNULL",   # counts, RPKM, pvals?
>            exonData="SummarizedExperimentOrNULL",   # counts, RPKM
>            lincData="SummarizedExperimentOrNULL",   # counts, RPKM
>            mirData="SummarizedExperimentOrNULL",    # counts, RPKM
>            cnvData="SummarizedExperimentOrNULL"     # RLE CN, pvals?
>         )) # }}}
>
> setValidity("MergedDataSet", function(object) { # {{{ check sample names
>   valid = TRUE
>   genome = NULL
>   samples = NULL
>   for( s in c('exprData', 'methData', 'geneData',
>               'exonData', 'lincData', 'mirData', 'cnvData') ) {
>     if( !empty(slot(object, s)) ) {
>
>       # do all of the genomes match?
>       if(is(slot(object, s), 'SummarizedExperiment')) {
>         if(is.null(genome)) genome = unique(genome(slot(object, s)))
>         valid = valid && (genome == unique(genome(slot(object, s))))
>       }
>
>       # do all of the samples match?
>       if(is(slot(object, s), 'ExpressionSet')) {
>         samples.s = sampleNames(slot(object, s))
>       } else if(is(slot(object, s), 'SummarizedExperiment')) {
>         samples.s = colnames(slot(object, s))
>       }
>
>       if(is.null(samples)) samples = samples.s
>       valid = valid && (samples == samples.s)
>
>     }
>   }
>   return( valid )
> }) # }}}
>
> setMethod("show",signature(object="MergedDataSet"), function(object) { #
> {{{
> callNextMethod()
>   available = c()
>   for( s in c('exprData', 'methData', 'geneData',
>               'exonData', 'lincData', 'mirData', 'cnvData') ) {
>     if(!empty(slot(object, s))) available = append(available, s)
>   }
>   if(empty(available)) cat('No experimental data has been added yet.\n')
>   else cat('Available data types:\n', paste(available, collapse=', '),
> '\n')
>   message("FIXME: add methods to automatically add columns of NAs to new
> data")
> }) # }}}
>
>
> --
> *A model is a lie that helps you see the truth.*
> *
> *
> Howard Skipper<
> http://cancerres.aacrjournals.org/content/31/9/1173.full.pdf>
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>

        [[alternative HTML version deleted]]

_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel

Reply via email to