[BioC] Nimblegen / Ringo / Preprocess error: inherits(myRG, "RGList") is not TRUE

Joern Toedling Joern.Toedling at curie.fr
Thu May 21 16:37:31 CEST 2009


Hello Jean-Yves,

I think I can explain the "inherits" confusion. In the PLoS tutorial we
analyzed data from a multi-array platform, so probes representing the selected
regions of the genome were distributed over four arrays. So we normalized the
arrays of each type (with the same set of probes) separately. That is why we
used this list called RGs. This is really a "standard" list, but each element
of the list is an object of class "RGList". If you look into the tutorial, the
normalization there is also done in a lapply loop.
Are your arrays also three arrays with different sets of probes? If so, then
you could probably use the same approach. If not, you could create only one
hybes-file for the three arrays, obtain a single RGList and normalize it (an
example of this simpler kind is shown in the vignette of the package Ringo).
Hope this helps.

Best regards,
Joern

P.S.: The Ringo package has already seen a bit of development since the last
Bioconductor release, and it should be stable and work with the older versions
of other packages. Please consider downloading the pre-compiled binary from
the bioconductor web page
http://www.bioconductor.org/packages/devel/bioc/html/Ringo.html
and using it.



On Wed, 20 May 2009 15:12:29 -0500, JEAN-YVES SGRO wrote
> Madison, 20 may 2009Hello all, I was wondering if anyone would have 
> an idea about the error I describe below:SessionInfo() at the very 
> end of the mail.Data: Nimblegen arrays for methylation. Chips are 
> new high density chips.Method: use functions in the Ringo package to 
> read-in the data that is then supposed to become an RGList based on 
> the limma package:The read-in method is a bit convoluted but I 
> followed the example in the Ringo package and in the supplement to 
> the paper "Analuzing ChIP-chip data using Bioconductor" - Toedling 
> and Huber - PLOS Nov 2008 vol 4 Issue 11:First the spottypes.txt 
> file describing spots:$ cat spottypes.txt SpotType       
>  GENE_EXPR_OPTION        PROBE_ID        Color Probe   BLOCK1  *     
>   blackThen the text files containing the names of the 2-color data- 
> there are 3 files but here is the first one:$ cat files_hyb1.txt 
> SlideNumber     FileNameCy3     FileNameCy5     Species Cy3     Cy5 
> HYB12um Hyb1_532.pair   Hyb1_635.pair   Homo sapiens (human)    C3   
>    C5Then read-in the data according to the paper:> library(Ringo)
> > sprintf("files_hyb%d.txt",1:3)
> [1] "files_hyb1.txt" "files_hyb2.txt" "files_hyb3.txt"
> > RGs <- lapply(sprintf("files_hyb%d.txt",1:3),readNimblegen,
"spottypes.txt", path=".")
> Reading targets file...
> Reading raw intensities...
> Read header information
> Read ./Hyb1_532.pair 
> Read ./Hyb1_635.pair 
> Determining probe categories...
> Matching patterns for: GENE_EXPR_OPTION PROBE_ID 
> Found 2170021 Probe 
> Setting attributes: values Color 
> [...etc...]
> > head(RGs[[1]]$R)
>      Hyb1_635
> [1,]  3062.94
> [2,]  3881.24
> [3,]  3863.27
> [4,] 14933.02
> [5,]  6925.96
> [6,]  8083.06
> >> print(RGs)
> [[1]]
> An object of class "RGList"
> $R
> [1]  3062.94  3881.24  3863.27 14933.02  6925.96
> 2173621 more rows ...$G
> [1]  3316.29  4459.45  4492.16 15431.71  7694.10
> 2173621 more rows ...$Rb
> [1] 0 0 0 0 0
> 2173621 more rows ...$Gb
> [1] 0 0 0 0 0
> 2173621 more rows ...$genes
>   GENE_EXPR_OPTION            PROBE_ID POSITION    X    Y Status
> 1           BLOCK1 BD_10X23FS000000445      445  689 1253  Probe> 
> class(RGs) [1] "list"
> > So it does say that is is an object of class RGList....Reading further in
the Ringo vignette I found the following:Among the provided alternative
preprocessing options is also the Tukey-biweight scaling procedure that
NimbleGen have used to scale ChIP-chip readouts so that the data is centered 
on zero.
> > exampleX.NG <- preprocess(exRG, method="nimblegen")
> > sampleNames(exampleX.NG) <- sampleNames(exampleX)So I tried to apply that
to the RG list I just created but have an "inherit" error:> RGs.NG <-
preprocess(RGs, method ="nimblegen")
> Error: inherits(myRG, "RGList") is not TRUEI therefore tried other 
> variation, including a suggestion on the BioConductor listserv but 
> the error persists:> xyz <- preprocess(RGs, method="loess",
>  returnMAList=TRUE) Error: inherits(myRG, "RGList") is not TRUE
> 
> > xyz <- preprocess(RGs[RGs$genes$Status=="Probe",], method="loess",
returnMAList=TRUE)
> Error in RGs[RGs$genes$Status == "Probe", ] : 
>   incorrect number of dimensionsQuestion: where does this "inherit" 
> problem comes from ?The Nimblegen data files (.pair files) are 
> longer because it is a high density array but that should not change 
> the type of the data structure I would think.Thank you for any 
> suggestions,Jean-Yves Sgro - jsgro at wisc.edu--------------------------
> ---------------------- Jean-Yves Sgro, Ph.D., Senior Scientist
http://myprofile.cos.com/sgroj65
> ------------------------------------------------
> University of Wisconsin 
> Biotechnology Center Gene Expression Center
> 425 Henry Mall Madison Wi 53706 USA
> http://www.biotech.wisc.edu/ServicesResearch/Gec/
> Fax: 608-262-6748
> ------------------------------------------------
> & Institute for Molecular Virology
> 1525 Linden Drive Madison WI 53706
> tel: 608-262-7464


---
Joern Toedling
Institut Curie -- UMR218
26 rue d'Ulm, 75005 Paris, FRANCE
Tel. +33 (0)156246942



More information about the Bioconductor mailing list