Hi, All;

I posted this question and someone suggested to update my bioconductor
packages and retry. I did and retried but failed again:


> library(exonmap)
Loading required package: affy
Loading required package: Biobase
Loading required package: tools

Welcome to Bioconductor

  Vignettes contain introductory material. To view, type
  'openVignette()'. To cite Bioconductor, see
  'citation("Biobase")' and for packages 'citation(pkgname)'.

Loading required package: affyio
Loading required package: preprocessCore
Loading required package: simpleaffy
Loading required package: genefilter
Loading required package: survival
Loading required package: splines
Loading required package: gcrma
Loading required package: matchprobes
Loading required package: RColorBrewer
Loading required package: RMySQL
Loading required package: DBI
Loading required package: plier
> setwd('~/KCDC/LCL-microarray/scandata')
> raw <- read.exon(covdesc='design.csv')
> raw@cdfName <- "exon.pmcdf"
> dat.rma <- rma(raw)
Error in .local(object, ...) : subscript out of bounds
> sessionInfo()
R version 2.7.2 beta (2008-08-16 r46368)
i386-apple-darwin9.4.0

locale:
C

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

other attached packages:
 [1] exon.pmcdf_1.1       exonmap_1.6.05       plier_1.10.0
 [4] RMySQL_0.6-0         DBI_0.2-4            RColorBrewer_1.0-2
 [7] simpleaffy_2.16.0    gcrma_2.12.1         matchprobes_1.12.0
[10] genefilter_1.20.0    survival_2.34-1      affy_1.18.2
[13] preprocessCore_1.2.1 affyio_1.8.1         Biobase_2.0.1

loaded via a namespace (and not attached):
[1] AnnotationDbi_1.2.2 RSQLite_0.6-9       annotate_1.18.0


When I traced the source of the error, I got the following result:

> traceback()
4: .local(object, ...)
3: pm(object, subset)
2: pm(object, subset)
1: rma(raw)


The problem occurred at the .local function of the following method
definition:

> showMethods("pm", class="AffyBatch", includeDef=T)
Function: pm (package affy)
object="AffyBatch"
function (object, ...)
{
    .local <- function (object, genenames = NULL, LISTRUE = FALSE)
    {
        if (is.null(genenames) & !LISTRUE) {
            cdfname <- getCdfInfo(object)
            psets <- as.list(cdfname)
            psets <- psets[order(names(psets))]
            index <- unlist(sapply(psets, function(x) x[, 1]),
                use.names = FALSE)
            return(exprs(object)[index, , drop = FALSE])
        }
        else {
            return(probes(object, "pm", genenames, LISTRUE = LISTRUE))
        }
    }
    .local(object, ...)
}


When I followed the steps in the .local function definition myself, I got
the following result:


> psets <- as.list(getCdfInfo(raw))> psets <- psets[order(names(psets))]
> index <- unlist(sapply(psets, function(x) x[,1]), use.names=F)
> length(index)
[1] 1164743
> dim(exprs(raw))
[1] 1102500      39
> mat <- exprs(raw)[index, , drop=F]
Error: subscript out of bounds
No suitable frames for recover()


>From this, it is obvious that "subscript out of bounds" error happened. (Of
course!) Is the annotation package at fault or the "pm" method at fault or
both or neither of them at fault? When I used the "huex10stv2hsentrezgcdf"
annotation package instead of the "exon.pmcdf" annotation package, the same
error occurred.

Thanks in advance,
Tae-Hoon

-- 
Tae-Hoon Chung

Korea Centers for Disease Control & Prevention (KCDC)
Korea National Institute of Health
Center for Genome Sciences :: Biobank Team

(T) +82-2-380-2252
(F) +82-2-354-1078
(M) +82-10-3511-1012

	[[alternative HTML version deleted]]

