[Bioc-devel] Changes to the SummarizedExperiment Class

Michael Lawrence lawrence.michael at gene.com
Wed Mar 4 01:35:11 CET 2015


Should be possible for the annotations to be of any type, as long as they
satisfy a simple contract of NROW() and 2D "[". Then, you could have a
DataFrame, GRanges, or whatever in there. But it would be nice to have a
special class for the container with range information. The contract for
the range annotation would be to have a granges() method.

I agree it would be nice if there was a way with the methods package to
easily assert such contracts. For example, one could define an interface
with a set of generics (and optionally the relevant position in the generic
signature). Then, once all of the methods have been assigned for a
particular class, it is made to inherit from that contract class. There are
lots of gotchas though. Not sure how useful it would be in practice.


On Tue, Mar 3, 2015 at 4:07 PM, Peter Haverty <haverty.peter at gene.com>
wrote:

> There are some nice similarities in these new imaginary types.  A
> "GRangesFrame" is a list of dimensionally identical things (columns) and
> some row meta-data (the GRanges).  The SE-like object is similarly a list
> of dimensionally like things (matrices, RleDataFrames, BigMatrix objects,
> HDF5-backed things) with some row meta-data (a DataFrame or GRangesFrame).
> Elegant?  Maybe they would actually be relatives in the class tree.
>
> I wonder if this kind of thing would be easier if we had Java-style
> Interfaces or duck-typing.  The "x" slot of "y" holds something that
> implements this set of methods ...
>
> Oh, and kinda apropos, the genoset class will probably go away or become
> an extension to this new SE-like thing.  The extra stuff that comes along
> with genoset will still be available.
>
> Pete
>
> ____________________
> Peter M. Haverty, Ph.D.
> Genentech, Inc.
> phaverty at gene.com
>
> On Tue, Mar 3, 2015 at 3:42 PM, Tim Triche, Jr. <tim.triche at gmail.com>
> wrote:
>
>> This.
>>
>> It would be damned near perfect as a return value for assays coming out of
>> an object that held several such assays at several time points in a
>> population, where there are both assay-wise and covariate-wise "holes"
>> that
>> could nonetheless be usefully imputed across assays.
>>
>>
>> Statistics is the grammar of science.
>> Karl Pearson <http://en.wikipedia.org/wiki/The_Grammar_of_Science>
>>
>> On Tue, Mar 3, 2015 at 3:25 PM, Peter Haverty <haverty.peter at gene.com>
>> wrote:
>>
>> > >
>> > >
>> > >
>> > >  I still think GRanges should be a subclass of DataFrame,
>> > >> which would make this easy, but I don't seem to be winning that
>> > argument.
>> > >>
>> > >
>> > > Just impossible. As Michael mentioned back in November, they have
>> > > conflicting APIs.
>> >
>> >
>> > Maybe a new "GRangesFrame" that is a DataFrame and holds a GRanges
>> > (without mcols) as an index?
>> >
>> >
>> >         [[alternative HTML version deleted]]
>> >
>> > _______________________________________________
>> > Bioc-devel at r-project.org mailing list
>> > https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> >
>>
>>         [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> Bioc-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>>
>
>

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list