[BioC] LPE error caused by gcRMA [Error in var.M.adap[i] <- ifelse(!is.na(var.M.adap[i - 1]), mean(var.M.adap[i + : replacement has length zero]

charliew charliew at MIT.EDU
Fri Oct 31 18:08:37 CET 2008

Dear List,
I've encountered the following error when running LPE:

Error in var.M.adap[i] <- ifelse(!is.na(var.M.adap[i - 1]),  
mean(var.M.adap[i +  :
  replacement has length zero

It happens when the CEL files have been processed with gcRMA but not  
when they have been processed with RMA.
I'm not positive about this but I think this error first started  
happening with the upgrade to gcRMA 2.x
I think it is happening because gcRMA is producing a lot of probes  
with identical expression values.

Here is a test session that causes the error. Upon request I can  
provide a tarball of the test data but any collection of CEL files  
will reproduce the error.
The error also occurs if you run gcRMA from within onecolorGUI or  
It also happens if you first write the expression data to a file with  
write.exprs, then read it back in with read.table.

#Loading the packages
 > library(affy)
Loading required package: Biobase
Loading required package: tools

 > library(gcrma)
Loading required package: matchprobes
Loading required package: splines

 > library(LPE)
 > set.seed(0)

#Reading in 4 CEL files
 > test.Dat<-ReadAffy()

#Summarizing with gcRMA
 > test.gcrma<-gcrma(test.Dat)
Adjusting for non-specific binding....Done.
Calculating Expression

#Summarizing with RMA
 > test.rma<-rma(test.Dat)
Background correcting
Calculating Expression

#Extracting gcRMA assay data
 > test.gcrma.MAT<-exprs(test.gcrma)
 > dim(test.gcrma.MAT)
[1] 15611     4

#Extracting RMA assay data

 > test.rma.MAT<-exprs(test.rma)
 > dim(test.rma.MAT)
[1] 15611     4

#Running LPE function on gcRMA data and the resulting error
 > var.test.gcrma<-baseOlig.error(test.gcrma.MAT, q= 0.01)
Error in var.M.adap[i] <- ifelse(!is.na(var.M.adap[i - 1]),  
mean(var.M.adap[i +  :
  replacement has length zero

#Running LPE function on RMA data - it successfully completes
 > var.test.rma<-baseOlig.error(test.rma.MAT, q= 0.01)

#My session info
 > sessionInfo()
R version 2.8.0 (2008-10-20)


attached base packages:
[1] splines   tools     stats     graphics  grDevices utils      
datasets  methods   base

other attached packages:
[1] xenopuslaevisprobe_2.3.0 xenopuslaeviscdf_2.3.0    
LPE_1.16.0               gcrma_2.14.0              
matchprobes_1.14.0       affy_1.20.0              Biobase_2.2.0

loaded via a namespace (and not attached):
[1] affyio_1.10.0        preprocessCore_1.4.0

Thanks a lot for your help


Charlie Whittaker, Ph.D.
Bioinformatics and Computing Core Facility
The David H. Koch Institute for Integrative Cancer Research At MIT
77 Mass Ave E18-366
Cambridge, MA 02139


More information about the Bioconductor mailing list