Dear Tim
thank you. You were right: previous versions of the
'arrayQualityMetrics' function expected elements 'R' and 'G' in the
'assayData' slot of the 'NChannelSet', and otherwise failed with the
cryptic error message that you reported.
I have now added some logic to the 'arrayQualityMetrics' function so
that if it sees an 'exprs' element in 'assayData' (what you have in
'nc') it simply invokes the same behaviour as for 'ExpressionSet'.
I also added better error reporting if neither of these two cases
apply,
and documented this behaviour in the vignette. See arrayQualityMetrics
>= 3.9.5, and also here:
http://www-huber.embl.de/users/whuber/bioc-list/110929/Report_for_nc
which was produced by
library("arrayQualityMetrics")
load("nc.RData")
arrayQualityMetrics(nc, do.logtransform=TRUE)
To respond to your below questions, I think the behaviour of the
validity method of NChannelSet class does the right thing. The problem
lied on the side of 'arrayQualityMetrics' function, who assumed more
specific properties of these objects (namely, the number and name of
its
assayData elements).
Thanks again for this useful feedback, it helps a lot to make this
package run on a wide variety of datasets.
Hope this helps
Wolfgang
Sep/27/11 11:54 AM, Tim Rayner scripsit::
> Dear Wolfgang,
>
> Thank you very much for your reply. I've tried using the latest
devel
> version of arrayQualityMetrics and I'm afraid the error persists
> (sessionInfo is below). The offending nc object is in my public
> dropbox, here:
http://dl.dropbox.com/u/1225281/nc.RData
>
> I've also tried coercing the NChannelSet object to an ExpressionSet,
> but that also fails:
>
>> as(nc, 'ExpressionSet')
> Error in updateOldESet(from, "ExpressionSet") :
> no slot of name "pData" for this object of class
"AnnotatedDataFrame"
>
> I've tried loading the convert library (v 1.28.0) but that doesn't
> make any difference. Converting from the original GeneFeatureSet
> object also fails with the same message. I can load the CCl4 object
> and confirm that arrayQualityMetrics runs without problems on that
> object.
>
> Having looked through the code I've come to the conclusion that the
> problem is likely to be me attempting to use the wrong data class; I
> guess NChannelSet is designed solely for use with two-channel data,
so
> "N" in this scenario shouldn't equal 1. The assayData slot for nc
> contains a slot named 'exprs', rather than the 'R', 'G', 'Rb', 'Gb',
> etc. slots which are expected. Why the validObject() function fails
to
> flag this is probably a topic for a separate discussion.
>
> Given that I presumably shouldn't be using NChannelSet, and the
> coercion from GeneFeatureSet to ExpressionSet currently doesn't
work,
> I'm wondering if there's any way to run arrayQualityMetrics on
> unnormalised data sets prepared using the oligo package?
>
> Many thanks again,
>
> Tim
>
>
>> sessionInfo()
> R version 2.13.0 (2011-04-13)
> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
>
> locale:
> [1] C
>
> attached base packages:
> [1] stats graphics grDevices utils datasets methods base
>
> other attached packages:
> [1] arrayQualityMetrics_3.9.4 pd.hugene.1.0.st.v1_3.2.0
> [3] oligo_1.16.2 preprocessCore_1.14.0
> [5] oligoClasses_1.14.0 RSQLite_0.9-4
> [7] DBI_0.2-5 SmithLabArray_0.5.5
> [9] limma_3.8.3 Biobase_2.12.2
>
> loaded via a namespace (and not attached):
> [1] AnnotationDbi_1.14.1 Biostrings_2.20.3 Cairo_1.4-9
> [4] Hmisc_3.8-3 IRanges_1.10.6 RColorBrewer_1.0-5
> [7] SVGAnnotation_0.9-0 XML_3.4-3 affxparser_1.24.0
> [10] affy_1.30.0 affyPLM_1.28.5 affyio_1.20.0
> [13] annotate_1.30.1 beadarray_2.2.0 bit_1.1-7
> [16] cluster_1.14.0 ff_2.2-3 gdata_2.8.1
> [19] genefilter_1.34.0 gplots_2.10.1 grid_2.13.0
> [22] gtools_2.6.2 hopach_2.12.0 hwriter_1.3
> [25] lattice_0.19-33 latticeExtra_0.6-18 setRNG_2009.11-1
> [28] splines_2.13.0 survival_2.36-9 vsn_3.20.0
> [31] xtable_1.5-6
>
>
>
> On 26 September 2011 09:30, Wolfgang Huber<whuber at="" embl.de="">
wrote:
>> Dear Tim
>>
>> thank you for your feedback and sorry for the delayed reply.
>> arrayQualityMetrics has changed a lot recently, and there may be
some
>> hickups.
>>
>> Can you please try with a more recent (devel) version of
>> arrayQualityMetrics, and if the problem persists, send me the
offending
>> object 'nc'?
>>
>> As a quick workaround, can you try with converting to
'ExpressionSet'
>> instead of 'NChannelSet'?
>>
>> I have just tried
>>
>> library(CCl4)
>> library(arrayQualityMetrics)
>> data(CCl4)
>> arrayQualityMetrics(CCl4)
>>
>> which worked without error,and also this quality report
>>
http://www-huber.embl.de/users/whuber/bioc-
list/110916/Report_for_nCCl4_with_RIN
>> was made by code in the package vignette from the NChannelSet
nCCl4.
>>
>> Best wishes
>> Wolfgang
>>
>>
>>> sessionInfo()
>> R Under development (unstable) (2011-09-25 r57072)
>> Platform: x86_64-apple-darwin10.8.0/x86_64 (64-bit)
>>
>> locale:
>> [1] C
>>
>> attached base packages:
>> [1] stats graphics grDevices utils datasets methods
base
>>
>> other attached packages:
>> [1] arrayQualityMetrics_3.9.4 CCl4_1.0.9
>> [3] limma_3.9.18 Biobase_2.13.9
>> [5] fortunes_1.4-2
>>
>> loaded via a namespace (and not attached):
>> [1] AnnotationDbi_1.15.21 BiocInstaller_1.1.28 Biostrings_2.21.9
>> [4] Cairo_1.4-9 DBI_0.2-5 Hmisc_3.8-3
>> [7] IRanges_1.11.27 KernSmooth_2.23-6
RColorBrewer_1.0-5
>> [10] RSQLite_0.9-4 SVGAnnotation_0.9-0 XML_3.4-3
>> [13] affy_1.31.5 affyPLM_1.29.3 affyio_1.21.2
>> [16] annotate_1.31.1 beadarray_2.3.8 cluster_1.14.0
>> [19] genefilter_1.35.0 grid_2.14.0 hwriter_1.3
>> [22] lattice_0.19-33 latticeExtra_0.6-18
preprocessCore_1.15.0
>> [25] reshape_0.8.4 setRNG_2009.11-1 splines_2.14.0
>> [28] survival_2.36-9 tools_2.14.0 vsn_3.21.2
>> [31] xtable_1.5-6 zlibbioc_0.1.7
>>
>>
>>
>> Sep/22/11 12:29 PM, Tim Rayner scripsit::
>>>
>>> Hi,
>>>
>>> Just a quick note to observe that the current stable version of
>>> arrayQualityMetrics seems to have a problem with NChannelSet
objects:
>>>
>>>> nc
>>>
>>> NChannelSet (storageMode: lockedEnvironment)
>>> assayData: 1178100 features, 50 samples
>>> element names: exprs
>>> protocolData
>>> rowNames: GWAS16.10_160_CD16.CEL GWAS16.11_158_CD16.CEL ...
>>> GWAS16.L_148_CD16.CEL (50 total)
>>> varLabels: exprs dates
>>> varMetadata: labelDescription channel
>>> phenoData
>>> rowNames: GWAS16.10_160_CD16.CEL GWAS16.11_158_CD16.CEL ...
>>> GWAS16.L_148_CD16.CEL (50 total)
>>> varLabels: info.batch.name operator ... visual_check (62 total)
>>> varMetadata: labelDescription channel
>>> featureData: none
>>> experimentData: use 'experimentData(object)'
>>> Annotation: pd.hugene.1.1.st.v1
>>>
>>>
>>>> arrayQualityMetrics(nc)
>>>
>>> The directory 'arrayQualityMetrics report for nc' has been
created.
>>> Error in rep("#1F78B4", x$numArrays) : invalid 'times' argument
>>>
>>>
>>>> traceback()
>>>
>>> 4: intgroupColors(x)
>>> 3: append(x, intgroupColors(x))
>>> 2: prepdata(expressionset, intgroup = intgroup, do.logtransform =
>>> do.logtransform)
>>> 1: arrayQualityMetrics(nc)
>>>
>>>
>>>> validObject(nc)
>>>
>>> [1] TRUE
>>>
>>>
>>>> sessionInfo()
>>>
>>> R version 2.13.1 (2011-07-08)
>>> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
>>>
>>> locale:
>>> [1] en_GB.UTF-8/en_GB.UTF-8/C/C/en_GB.UTF-8/en_GB.UTF-8
>>>
>>> attached base packages:
>>> [1] stats graphics grDevices utils datasets methods
base
>>>
>>> other attached packages:
>>> [1] arrayQualityMetrics_3.8.0 pd.hugene.1.1.st.v1_3.2.0
>>> [3] oligo_1.16.0 preprocessCore_1.14.0
>>> [5] oligoClasses_1.14.0 RSQLite_0.9-4
>>> [7] DBI_0.2-5 ClinStudyWeb_0.2.4
>>> [9] rjson_0.2.5 SmithLabArray_0.5.5
>>> [11] limma_3.8.3 Biobase_2.12.2
>>>
>>> loaded via a namespace (and not attached):
>>> [1] affxparser_1.24.0 affy_1.30.0 affyio_1.20.0
>>> [4] affyPLM_1.28.5 annotate_1.30.1
AnnotationDbi_1.14.1
>>> [7] beadarray_2.2.0 Biostrings_2.20.3 bit_1.1-7
>>> [10] Cairo_1.4-9 cluster_1.14.0 ff_2.2-3
>>> [13] gdata_2.8.1 genefilter_1.34.0 gplots_2.10.1
>>> [16] grid_2.13.1 gtools_2.6.2 Hmisc_3.8-3
>>> [19] hopach_2.12.0 hwriter_1.3 IRanges_1.10.6
>>> [22] lattice_0.19-33 latticeExtra_0.6-18 RColorBrewer_1.0-5
>>> [25] RCurl_1.6-10 setRNG_2009.11-1 splines_2.13.1
>>> [28] survival_2.36-9 SVGAnnotation_0.9-0 tcltk_2.13.1
>>> [31] tools_2.13.1 vsn_3.20.0 XML_3.4-3
>>> [34] xtable_1.5-6
>>>
>>> Given that the documentation claims to support such objects I'm
>>> assuming this is a bug? I'm currently coercing GeneFeatureSet
objects
>>> to NChannelSet and as you can see the conversion yields valid
objects.
>>> As a workaround, is there an alternative class to which I should
be
>>> coercing?
>>>
>>> Many thanks,
>>>
>>> Tim Rayner
>>>
>>
>>
>> --
>>
>>
>> Wolfgang Huber
>> EMBL
>>
http://www.embl.de/research/units/genome_biology/huber
>>
>> _______________________________________________
>> Bioconductor mailing list
>> Bioconductor at r-project.org
>>
https://stat.ethz.ch/mailman/listinfo/bioconductor
>> Search the archives:
>>
http://news.gmane.org/gmane.science.biology.informatics.conductor
>>
--
Wolfgang Huber
EMBL
http://www.embl.de/research/units/genome_biology/huber