[BioC] rma for tiling arrays (oligo package)
James W. MacDonald
jmacdon at med.umich.edu
Mon Jul 21 16:48:48 CEST 2008
Hi Ann,
I don't think you want to use rma() directly, as it is going to try to
do a medianpolish on probesets but such a thing doesn't exist for the
tiling arrays.
If you want to use the background correction and normalization that are
used by rma() then I think it will take some work on your part. The
functions you will want to use are part of the affy package, but you
don't really want to load affy and oligo at the same time because there
are so many identically named functions (they both have namespaces, so
this isn't the end of the world, but it is easier if you don't have to
deal with name collisions).
I would personally just copy the functions normalize.quantiles() and
rma.background.correct() from affy into a file (say, affysources.R) and
then source that into R. Both of these functions want you to pass a
matrix, so you would want to extract the pm data from your AllArrays
object, run rma.background.correct() and then normalize.quantiles() on
the matrix, and then put that back into AllArrays.
Best,
Jim
Ann Hess wrote:
> After creating an appropriate library using the makePDpackage, I am
> using the oligo package to open and work with Affymetrix Arabidopsis
> Tiling 1.0R Arrays. I am interested in using the rma function to
> background correct and normalize the data, but I am not sure how to map
> the processed data back to probes or directly to chromosome and position.
>
> What do the rownames of the expression matrix created by rma correspond
> to? My best guess is that they correspond to chromosome position (which
> can be found using pmChr, but not for an ExpressionSet object).
> However, these positions are relative to a particular chromosome and
> therefore not unique. For example, there are probes corresponding to
> position 417 on both Chromosome 3 and Chromosome 5, but only a single
> row in the ExpressionSet object corresponding to 417.
>
> Is there a way to background correct and normalize the data without the
> rma function? Perhaps this would allow for easier mapping to probes.
>
> Any suggestions would be appreciated.
>
> Ann
>
> Code and session info is here:
>
>> library(oligo)
>> library(pd.at35b.mr.v04.2.tigrv5)
>> AllArrays<-read.celfiles(list.celfiles(),pk="pd.at35b.mr.v04.2.tigrv5")
>> dim(pm(AllArrays))
> [1] 3092374 12
>> dim(mm(AllArrays))
> [1] 3092338 12
>
>> Pos<-pmPosition(AllArrays)
>> length(Pos)
> [1] 3092374
>> length(unique(Pos))
> [1] 2921991
>
>> RMAout<-rma(AllArrays)
>
>> dim(exprs(RMAout))
> [1] 2921991 12
>
>> exprs(RMAout)[1:10,1:2]
> Comp5-1_1006.CEL Comp5-2_1006.CEL
> 0 3.344400 3.295634
> 1 1.988137 1.708682
> 1000 6.315857 7.297425
> 10000009 9.053133 8.754469
> 10000014 2.106050 2.137780
> 10000024 10.392988 9.385502
> 10000026 2.242264 5.487639
> 10000034 1.830658 5.239400
> 1000004 3.097441 5.825040
> 10000046 6.839724 7.221181
>
>> sessionInfo()
> R version 2.6.0 (2007-10-03)
> x86_64-redhat-linux-gnu
>
> attached base packages:
> [1] splines tools stats graphics grDevices utils datasets
> [8] methods base
>
> other attached packages:
> [1] pd.at35b.mr.v04.2.tigrv5_1.2.0 oligo_1.2.2
> [3] oligoClasses_1.0.3 affxparser_1.10.2
> [5] AnnotationDbi_1.0.6 preprocessCore_1.0.0
> [7] RSQLite_0.6-9 DBI_0.2-4
> [9] Biobase_1.16.3
>
> loaded via a namespace (and not attached):
> [1] rcompgen_0.1-17
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives:
> http://news.gmane.org/gmane.science.biology.informatics.conductor
--
James W. MacDonald, M.S.
Biostatistician
Hildebrandt Lab
8220D MSRB III
1150 W. Medical Center Drive
Ann Arbor MI 48109-0646
734-936-8662
More information about the Bioconductor
mailing list