[BioC] beadarray example data problem 2

Martin Morgan mtmorgan at fhcrc.org
Mon Oct 30 22:01:37 CET 2006


Probably this discussion belongs on the bioc-devel list, so hopefully
replies will go there; we're beyond the realm of information that a
regular user should need to know.

assayDataNew is defined so that any unrecognized arguments are added
to the list or environment (depending on storage.mode!) that it is
creating, so storageMode gets added to the list, rather than flagged
as 'unrecognizeable'. It has to be this way, since assayData is meant
to store things whose names are not known in advance. Probably the
environment returned by the current definition contains a variable
called storageMode with a value 'list'!

AssayData can be checked for 'validity', but the method for checking
it has to be written by the S4 class that AssayData belongs to. It
might seem like a good idea to write a validity method for all
AssayData (e.g., that all entries are arrays with identical size) but
this isn't possible with the way AssayData is defined (*all*
environments or lists would be checked in this way) and is probably
too restrictive anyway.

In retrospect the naming of storage.mode as such was probably a
mistake, and it should have been named storageMode. This would be
consistent with the 'public' face of ExpressionSet and so on, whereas
storage.mode is more consistent with, and was inspired by, R's
'storage.mode'.

Martin

"Mark Dunning" <md392 at cam.ac.uk> writes:

> Hi Keith and Martin,
>
> Thanks for pointing out the problem with the package. I will make the change
> from storageMode to storage.mode asap. Obviously I had been using the
> correct name at some point but changed when I re-wrote the functions. I'm
> surprised it didn't throw any warning message about not recognising a
> parameter called storageMode though?
>
> Mark
>
> -----Original Message-----
> From: bioconductor-bounces at stat.math.ethz.ch
> [mailto:bioconductor-bounces at stat.math.ethz.ch]On Behalf Of Martin
> Morgan
> Sent: 30 October 2006 05:36
> To: keith at wehi.edu.au
> Cc: bioconductor at stat.math.ethz.ch
> Subject: Re: [BioC] beadarray example data problem 2
>
>
> Hi Keith -- I'll let Mark make changes to his package, but actually a
> quick peak at the documentation for assayDataNew (e.g.,
> help("assayDataNew")) shows that the argument should be 'storage.mode'
> rather than storageMode.
>
> By default, assayDataNew returns an 'environment', which is what you
> see with your first example. You can see the contents of an
> environment with the 'ls()' command (this is analogous to 'names()'
> applied to lists), and can access individual members of the environment
> with '$' or '[[' (you cannot subset an environment with '[',
> though).
>
> Probably the data is there and usable, just not in the form expected.
>
> Hope that helps,
>
> Martin
>
> Keith Satterley <keith at wehi.EDU.AU> writes:
>
>> To Mark or anyone who can modify the beadarray package,
>>
>> I am having  further problems with the example data in the beadarray
> package.
>> Using R2.4.0 or R2.5.0dev on Windows XP.
>>  > sessionInfo()
>> R version 2.4.0 (2006-10-03)
>> i386-pc-mingw32
>>
>> locale:
>>
> LC_COLLATE=English_Australia.1252;LC_CTYPE=English_Australia.1252;LC_MONETAR
> Y=English_Australia.1252;LC_NUMERIC=C;LC_TIME=English_Australia.1252
>>
>> attached base packages:
>> [1] "tools"     "methods"   "stats"     "graphics"  "grDevices" "utils"
>> "datasets"  "base"
>>
>> other attached packages:
>> beadarray      affy    affyio   Biobase     limma
>>    "1.2.1"  "1.12.0"   "1.2.0"  "1.12.2"   "2.9.1"
>>
>> When I do the following:
>> =================
>>  > library(beadarray)
>>  > targets = readBeadSummaryTargets("targets.txt")
>>  > targets
>>        DataFile               SampleSheet              QCInfo
>> 1 raw_data.csv raw_data_sample_sheet.csv raw_data_qcinfo.csv
>>  >
>>  > BSData <- readBeadSummaryData(targets)
>> Reading file  raw_data.csv
>> Reading file  raw_data.csv
>>  > QCInfo(BSData)
>> <environment: 0x042ad370>
>> =================
>> When I load the BSData item I get the following:
>> =================
>>  > library(beadarray)
>>  > data(BSData)
>>  > QCInfo(BSData)
>>   $Signal
>>                Biotin cy3_high cy3_low cy3_med  gene      hs   house
> labeling
>> mm      pm negative
>> 1475542110_F  7551.0  32436.0   816.6 11178.2 205.8 29498.3  7914.2
> 92.9
>> 3584.5 21807.1     94.4
>> ...for 18 lines
>> $StDev
>>               Biotin cy3_high cy3_low cy3_med gene     hs  house labeling
> mm
>>       pm negative
>> 1475542110_F  675.2   9453.7   155.3  3303.9  0.5 5463.8 2405.3      7.6
> 2978.1
>> 13118.4     11.8
>> ...for 18 lines
>> $Detection
>>               Biotin cy3_high cy3_low cy3_med      gene hs house  labeling
> mm pm
>>   negative
>> 1475542110_F      1        1       1       1 0.6499011  1     1 0.4153883
> 1  1
>> 0.7470226
>> ...for 18 lines
>> ==================
>> So there is something wrong with QCInfo(BSData) in the first approach.
>>
>>
>> I have investigated this problem and found that if I change line 54 in
>> ExpressionSetIlluminaQC.R from:
>>
>>    QC = assayDataNew(Signal = signal, StDev=var, Detection=detection,
>> storageMode="list")
>>
>> to
>>
>>    QC = as.list(assayDataNew(Signal = signal, StDev=var,
> Detection=detection,
>> storageMode="list"))
>>
>> the problem is fixed. If Mark or anyone else could check this fix and if
> they
>> agree, please submit this it to the current release and devel versions of
> the
>> beadarray package, I'm sure it would help others trying to get the example
> data
>> to work as descibed,
>>
>> thanks
>>
>> Keith
>>
>> ========================
>> Keith Satterley
>> Bioinformatics Division
>> The Walter and Eliza Hall Institute of Medical Research
>> Parkville, Melbourne,
>> Victoria, Australia
>>
>> _______________________________________________
>> 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 T. Morgan
> Bioconductor / Computational Biology
> http://bioconductor.org
>
> _______________________________________________
> 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 T. Morgan
Bioconductor / Computational Biology
http://bioconductor.org



More information about the Bioconductor mailing list