[Bioc-devel] eSet class and two color arrays
Hi,
Wolfgang Huber wrote:
Hi Martin, Seth, & others, one of the basic features of the eSet class is that - it has exactly one phenoData slot, and >=1 assayData slots - the rows of the dataframe in phenoData correspond 1:1 to the columns of each the assayData matrices. I was wondering whether there is interest in a class that has - one or several phenoData slots, and the same number of assayData slots - there is a 1:1 correspondence between these - the rows of each phenoData correspond to the columns of the corresponding assayData matrix.
Why not a list of eSets? Why do you want to put these together in this way?
Andreas Buness from arrayMagic has a use case where such a class could be used to represent raw two-color microarray data. Alternatively, it is also possible to put two-color data into the existing eSet design, if a convention is used that each array is represented by two rows in phenoData (corresponding to the two colors) and two columns in assayData. This is essentially what now happens in the exprSetRG class of arrayMagic. So a useful eSet-based class for two-color data (formalizing the convention) could still be derived from the existing eSet definition. But I wanted to put up this for discussion: do other people have a need/wish for "multiple phenoData" design?
We decided not to deal with preprocessed data (I think). And that
eSet corresponds to expression, not raw data. So when you get here, you
do not have red or green channels, you have expression (relative?) not
raw data. Packages like limma, marray etc, I believe have their own
internal formats for the raw (two channel data) and the goal of the eSet
classes in Biobase is to provide a uniform data structure for downstream
analysis. While one can see obvious similarities; one channel data also
has different, but similar, structures for preprocessed data than
processed data -- there too we decided not to get involved at the
preprocessing stage -- eSet and friends are for post-processed data so
that it can be treated uniformly by tools for differential expression,
machine learning etc.
If a special preprocessed data class is wanted, then I think it would
be better to define it on its own and not try to leverage the eSet class
into double duty.
Now, you might want to use, phenoData, AssayData and other building
blocks in Biobase, to construct the classes you describe, just not eSet,
it has a role in life.
best wishes
Robert
Cheers Wolfgang
Robert Gentleman, PhD Program in Computational Biology Division of Public Health Sciences Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N, M2-B876 PO Box 19024 Seattle, Washington 98109-1024 206-667-7700 rgentlem at fhcrc.org