[BioC] ArrayQuality package bug in agQuality function - marray package

Marcus Davy mdavy at hortresearch.co.nz
Mon Jul 14 06:27:06 CEST 2008

there appears to be a bug in the arrayQuality package, specifically the
agQuality function which traces back to the function read.Agilent in the
marray package.

If I specify a path for the location of Agilent microarray files to process
which is not the current working directory (path=".", and without specifying
'gnames' information) then I get the following error;

>agQuality(fnames=targets$Filename, path=dataDir, resdir = diagPlotDir)
[1] "Starting agQuality..."
Error in file(con, "r") : cannot open the connection
In addition: Warning message:
In file(con, "r") :
  cannot open file '[FILE.txt]': No such file or directory

> traceback()
4: file(con, "r")
3: readLines(fullnames[1], n = 100)
2: read.Agilent(fnames = fnames[1], path = path, DEBUG = DEBUG)
1: agQuality(fnames = targets$Filename, path = dataDir, resdir =

> find("read.Agilent")
[1] "package:marray"

In 'read.Agilent', the 'fullnames' vector defined on line 15 does not
contain fullpath information ('fullfnames')
so the readLines function on line 24 fails. If 'gnames' was specified it
would probably work.

A hack to get it going was to make a symbolic link for the first file to
read in the description information from the first file.

ln -s /full/path/to/first/file file

This temporary workaround works without modifying any R code.

If I try putting the full path name 'fnames' in read.Agilent with
'path=NULL' as suggested in help(read.Agilent);

>   agQuality(fnames=file.path(dataDir, targets$Filename), path=NULL, resdir =
[1] "Starting agQuality..."

Reading ...  .//[PATH TO FILE]
Error in file(file, "r") : cannot open the connection
In addition: Warning message:
In file(file, "r") :
  cannot open file './/[PATH TO FILE]': No such file or directory
> > traceback()
6: file(file, "r")
5: read.table(f, skip = skip2, header = TRUE, sep = sep, quote = quote,
       check.names = FALSE, as.is = TRUE, comment.char = "", nrows = nspots,
4: read.marrayRaw(fnames = "/[PATH TO FILE]",
       path = ".", name.Gf = "gMedianSignal", name.Gb = "gBGMedianSignal",
       name.Rf = "rMedianSignal", name.Rb = "rBGMedianSignal", layout = <S4
object of class "marrayLayout">,
       gnames = <S4 object of class "marrayInfo">, notes = "Agilent Data",
       skip = 9, sep = "\t", quote = "\"", DEBUG = FALSE)
3: do.call("read.marrayRaw", maRaw.args)
2: read.Agilent(fnames = fnames[1], path = path, DEBUG = DEBUG)
1: agQuality(fnames = file.path(dataDir, targets$Filename), path = NULL,
       resdir = diagPlotDir)


> sessionInfo()
R version 2.7.0 (2008-04-22)


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

other attached packages:
 [1] arrayQuality_1.19.0 RColorBrewer_1.0-2  gridBase_0.4-3
 [4] hexbin_1.14.0       lattice_0.17-6      convert_1.16.0
 [7] Biobase_2.0.1       marray_1.19.0       limma_2.14.1

The contents of this e-mail are privileged and/or confid...{{dropped:5}}

More information about the Bioconductor mailing list