Question: arrayQualityMetrics in reading HTAfeatureSet read by oligo package
gravatar for RV
5 months ago by
RV10 wrote:


I am trying to perform the standard arrayQualityMetrics for 4 HTA 2.0 CEL files. Following is the code and the error I get. I have pasted the error, traceback and session info. Can you please let me know what I am missing? The CEL files work with all the other package. 





list = list.files(celpath,full.names=TRUE, pattern = "*.CEL", recursive = TRUE)


data = oligo::read.celfiles(list)

arrayQualityMetrics(expressionset = data ,

                    outdir = "Intial_QC",

                    force = TRUE,

                    do.logtransform = TRUE)


The directory 'Intial_QC' has been created.

Error in cpSubsCon(src[k], destname) : UNRESOLVED SYMBOLS:

Line 7 : @52084400103650101719435548086310.CEL", "1" ], [ "2", "@52084400103650101719435548086313.CEL", "2" ], [ "3", "@52084400104783112419435821946312.CEL", "3" ], [ "4", "@5

7: stop(mess)
6: cpSubsCon(src[k], destname)
5: cpSubs(src, dest)
4: copySubstitute(src = filelocs, dest = outdir, recursive = TRUE, 
       symbolValues = params)
3: makeTitle(reporttitle = reporttitle, outdir = outdir, params = c(HIGHLIGHTINITIAL = toJSON_fromchar(ifelse(apply(outliers, 
       1, any), "true", "false")), ARRAYMETADATA = toJSON_frommatrix(arrayTableCompact), 
       SVGOBJECTNAMES = toJSON_fromvector(names(svgdata)), REPORTOBJSTYLES = paste0(".aqm", 
           reportObjs, " { }", collapse = "\n")))
2: aqm.writereport(modules = m, arrayTable = x$pData, reporttitle = reporttitle, 
       outdir = outdir)
1: arrayQualityMetrics(expressionset = data, outdir = "Intial_QC", 
       force = TRUE, do.logtransform = TRUE)


Session info - 

> sessionInfo()
R version 3.5.0 Patched (2018-05-03 r74699)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats4    parallel  stats     graphics  grDevices utils     datasets  methods  
[9] base     

other attached packages:
 [1] pd.hta.2.0_3.12.2          DBI_1.0.0                  RSQLite_2.1.1             
 [4] oligo_1.46.0               Biostrings_2.50.1          XVector_0.22.0            
 [7] IRanges_2.16.0             S4Vectors_0.20.1           Biobase_2.42.0            
[10] oligoClasses_1.44.0        BiocGenerics_0.28.0        arrayQualityMetrics_3.38.0

loaded via a namespace (and not attached):
 [1] bitops_1.0-6                matrixStats_0.54.0          bit64_0.9-7                
 [4] RColorBrewer_1.1-2          GenomeInfoDb_1.18.1         tools_3.5.0                
 [7] backports_1.1.2             gcrma_2.54.0                R6_2.3.0                   
[10] affyio_1.52.0               rpart_4.1-13                Hmisc_4.1-1                
[13] lazyeval_0.2.1              colorspace_1.3-2            nnet_7.3-12                
[16] tidyselect_0.2.5            gridExtra_2.3               base64_2.0                 
[19] bit_1.1-14                  compiler_3.5.0              preprocessCore_1.44.0      
[22] htmlTable_1.12              Cairo_1.5-9                 DelayedArray_0.8.0         
[25] scales_1.0.0                checkmate_1.8.5             genefilter_1.64.0          
[28] affy_1.60.0                 stringr_1.3.1               digest_0.6.18              
[31] foreign_0.8-71              illuminaio_0.24.0           affyPLM_1.58.0             
[34] base64enc_0.1-3             pkgconfig_2.0.2             htmltools_0.3.6            
[37] BeadDataPackR_1.34.0        limma_3.38.2                htmlwidgets_1.3            
[40] rlang_0.3.0.1               rstudioapi_0.8              bindr_0.1.1                
[43] hwriter_1.3.2               jsonlite_1.5                BiocParallel_1.16.0        
[46] acepack_1.4.1               dplyr_0.7.8                 RCurl_1.95-4.11            
[49] magrittr_1.5                GenomeInfoDbData_1.2.0      Formula_1.2-3              
[52] Matrix_1.2-14               Rcpp_1.0.0                  munsell_0.5.0              
[55] vsn_3.50.0                  stringi_1.2.4               SummarizedExperiment_1.12.0
[58] zlibbioc_1.28.0             beadarray_2.32.0            plyr_1.8.4                 
[61] affxparser_1.54.0           grid_3.5.0                  blob_1.1.1                 
[64] crayon_1.3.4                lattice_0.20-35             splines_3.5.0              
[67] annotate_1.60.0             knitr_1.20                  pillar_1.3.0               
[70] GenomicRanges_1.34.0        reshape2_1.4.3              codetools_0.2-15           
[73] XML_3.98-1.16               glue_1.3.0                  latticeExtra_0.6-28        
[76] data.table_1.11.8           BiocManager_1.30.4          foreach_1.4.4              
[79] gtable_0.2.0                openssl_1.0.2               purrr_0.2.5                
[82] assertthat_0.2.0            ggplot2_3.1.0               xtable_1.8-3               
[85] ff_2.2-14                   survival_2.42-6             tibble_1.4.2               
[88] iterators_1.0.10            AnnotationDbi_1.44.0        memoise_1.1.0              
[91] setRNG_2013.9-1             bindrcpp_0.2.2              cluster_2.0.7-1            
[94] gridSVG_1.6-0 

ADD COMMENTlink modified 5 months ago by Mike Smith3.5k • written 5 months ago by RV10

Is it possible for you to save data using the save() function and then share that ExpressionSet object so I can try and debug? I've not seen this error message before.

ADD REPLYlink written 5 months ago by Mike Smith3.5k

Hi Mike, 

Thanks! Here is the link to the data object. 

Many thanks for looking into it. I am still unable to pinpoint what the reason is. 



ADD REPLYlink modified 5 months ago • written 5 months ago by RV10
Answer: arrayQualityMetrics in reading HTAfeatureSet read by oligo package
gravatar for Mike Smith
5 months ago by
Mike Smith3.5k
EMBL Heidelberg / de.NBI
Mike Smith3.5k wrote:

I think this is because you have the @ symbol in your file names. arrayQualityMetrics has templates for the reports it produces, with the structure indicated by placeholder entries like @ARRAYNAME@. These are then replaced by the values in the expressionSet when the report is produced.

It's getting confused when the replacement values also have @ symbols and thinks the replacement has failed, hence the error.

I don't think there's a way to change this behaviour, so you can either rename the files themselves or remove the the @ symbols from the file names in the expressionSet. That's what the code below does, and then I am able to run arrayQualityMetrics() successfully.

rownames(phenoData(data)) <- gsub("@", "", rownames(phenoData(data)))
rownames(protocolData(data)) <- gsub("@", "", rownames(protocolData(data)))
ADD COMMENTlink modified 5 months ago • written 5 months ago by Mike Smith3.5k

Hi Mike, 

This is the problem! Thank you so much for helping out. 


ADD REPLYlink written 5 months ago by RV10
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 266 users visited in the last hour