[BioC] ExpressionSet class and problems with phenotype and metadata matrices

Martin Morgan mtmorgan at fhcrc.org
Thu Feb 28 23:12:32 CET 2008


"James W. MacDonald" <jmacdon at med.umich.edu> writes:

> Hi Sean,
>
> Sean MacEachern wrote:

>> #My R programming knowledge is basic at best so I assumed there was
>> something wrong there and continued with the metadata and phenoData
>> 
>>> metadata = data.frame(labelDescrition = c("Status"),rownames=c("Phenotype"))
>>> metadata
>>   labelDescrition  rownames
>> 1          Status Phenotype
>> 
>>> phenoData=new("AnnotatedDataFrame", data = AffyPheno, varMetadata = metadata)
>>> phenoData
>> An object of class "AnnotatedDataFrame"
>>   rowNames: line6.1, line6.2, ..., line7.4  (7 total)
>>   varLabels and varMetadata description:
>>     Pheno: NA
>>   additional varMetadata: rownames, labelDescription
>> 
>> 
>> # As you can see no error was thrown, but I was expecting something in the
>> varLabels and varMetadata descrtiptions...
>
> I'd have to check to be sure, but I believe what you want for your 
> metadata is to explain what the 'Pheno' column contains. So something like
>
> metadata = data.frame(labelDescrition = c("Phenotype"),rownames="Pheno")
>
> Is IIRC correct. I'm actually surprised you didn't get an error. Martin 
> Morgan may respond as well, and he knows better than, well, everybody 
> about the ExpressionSet class so he will know for sure.

You (both!) have a typo in 'labelDescrition', so a column
'labelDescription' gets created with NA values (use
varMetadata(phenoData) to see the modified varMetadata). There is also
a small bug in how the AnnotatedDataFrame is shown; it should have
said 'additional varMetadata: rownames, labelDescrition' (reporting
the typo version of labelDescription). The display buglet will be fixed
in the 'devel' version of Biobase.

A couple of other notes. 'rownames' as an argument to data.frame
creates a column named 'rownames'; a 'row.names' argument would have
created row names in the data frame. And if the varMetadata data frame
did have row names, they would have been ignored when creating
AnnotatedDataFrame (columns 1, 2, ... of phenoData are matched to rows
1, 2, ... of varMetadata without comparing names(phenoData) to
row.names(varMetadata). So

> metadata = data.frame(labelDescription=("Phenotype")

is probably what you want.

Martin

>> So I thought it was best to check the list to see if anyone could point out
>> any mistakes I've made before I continue.
>> 
>> While I was here I was also wondering if anyone knew of anything in the
>> annotation package like the hgu95av2 chip for annotating chicken affy data
>> in the annotation library?
>
> Um, what? Not sure what you want here. The hgu95av2 chip is designed for 
>   analyzing human samples, so there is nothing in there for chickens. If 
> you have chicken affy data, then you might want to look at the chicken 
> annotation package, which _does_ annotate that chip.
>
> Best,
>
> Jim
>
>
>> 
>> Thanks in advance, 
>> 
>> Sean MacEachern
>> 
>> R version 2.6.0 (2007-10-03)
>> i386-apple-darwin8.10.1
>> Biobase_1.16.3
>> 
>> _______________________________________________
>> Bioconductor mailing list
>> Bioconductor at stat.math.ethz.ch
>> https://stat.ethz.ch/mailman/listinfo/bioconductor
>> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
>
> -- 
> James W. MacDonald, M.S.
> Biostatistician
> Affymetrix and cDNA Microarray Core
> University of Michigan Cancer Center
> 1500 E. Medical Center Drive
> 7410 CCGC
> Ann Arbor MI 48109
> 734-647-5623
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor

-- 
Martin Morgan
Computational Biology / Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N.
PO Box 19024 Seattle, WA 98109

Location: Arnold Building M2 B169
Phone: (206) 667-2793



More information about the Bioconductor mailing list