[BioC] Error message (probably) from AffyBatch.R when using a modified CDF
Hugh Shanahan
hugh at cs.rhul.ac.uk
Wed Jan 23 22:06:18 CET 2013
We are writing a new R package to construct CDF's with particular subsets of probes removed. We are building the CDF packages using a modification of makecdfenv.
Up until recently, everything has been working fine when we update the CDF library name of an expression set, i.e.
> raw <- ReadAffy()
> raw at cdfName <- "hgu133ag4"
> eSet <- rma(raw)
Having upgraded to R 2.15.2 and now using the most up to date libraries of bioconductor 2.10 (i.e. doing a clean install on a new (Windows) machine generates an error
which has cropped over the years, namely if we try to run a normalisation step (such as above) then we get the following error (the same error occurs with other normalisations such as rma) :-
> eSet <- rma(raw)
Attaching package: hgu133ag4cdf
The following object(s) are masked from package:hgu133acdf:
i2xy, xy2i
Error in ans[[i]][, i.probes] : incorrect number of dimensions
The problem appears to occur in indexProbes which is part of the affy package (AffyBatch.R to be precise), which first gets the environment associated with the expression set,
envir <- getCdfInfo(object)
genenames <- ls(envir)
ans <- mget(genenames, envir, ifnotfound=NA)
so that ans should be a list with names of affy id's and each entry is a two column data frame with entries for the pm and mm probe locations.
The only possibility when the error is occurring is when the following is called
tmp <- as.vector(ans[[i]][, i.probes])
which suggests that ans is not in this format when it gets to this line. The problem is, I can't reproduce the error if I use the source code of AffyBatch.R .
Any ideas on how I can check that this hypothesis is correct ? Any ideas how I can fix this ? It looks as if this error has occurred a number of times over the years, but there never seems to be a complete solution...
Many thanks
More information about the Bioconductor
mailing list