[BioC] MA plots for single channel agilent array data, plotMA3by2 and atomic vectors issue
Gordon K Smyth
smyth at wehi.EDU.AU
Sun Jun 26 03:34:40 CEST 2011
Hi Richard,
I'll reply to this email and your second question on June 19 about making
MA plots together.
First, how to make a simple MA-plot. limma makes MA-plots for single
channel data automatically. limma didn't use to have internal support for
generic single channel data, but it has had for past couple of years. So
you no longer need the work around for reading the data that you've used
below. Instead you can simply use:
x <- read.maimages(files=dir(),source="agilent",green.only=TRUE)
Then limma will read your data into an EListRaw data object, which
represents single channel data. You'll be able to type
y <- backgroundCorrect(x,method="normexp",offset=16)
plotMA(y,array=2)
y <- normalizeBetweenArrays(y,method="quantile")
etc etc.
In general, limma knows what to do with an EList object. The function
plotMA3by2() is an exception, because it is written strictly for two-color
data (as the help page explains). You cannot give it an simple matrix,
because a matrix does not comprise two color information. There is no
reason that a single channel version couldn't exist, but you're the first
to ask for it.
You can still use plotMA3by2() for your single channel data by making a
pseudo two-color data object by:
E <- y$E
A <- matrix(rowMeans(E),nrow(E),ncol(E))
MA <- new("MAList",list(M=E,A=A))
plotMA3by2(MA)
Best wishes
Gordon
--------------- original message ---------------
[BioC] MA plots for single channel agilent array data, plotMA3by2 and
atomic vectors issue
Richard Green greener at uw.edu
Sat Jun 18 08:28:18 CEST 2011
Howdy folks. I am trying to run some QC on a set of single channel agilent
microarray files and would like to generate MA plots for them, but since
they are single channel, plotMA3by2 doesn't appear to work(see error
below).
Could I be missing something? or is there an simple alternate method that
could generate MA plots? Any suggestions folks have is muchly appreciated.
-Rich
I managed to load my array data successfully:
RG <-
read.maimages(files=dir(),source="agilent",columns=list(G="gMeanSignal",Gb="gBGMedianSignal",R="gMeanSignal",Rb="gBGMedianSignal"))
And successfully performed back ground correction and normalization on the
data
RG2 <- backgroundCorrect(RG, method="normexp", offset=50)
RG2 <- normalizeBetweenArrays(RG2$G, method="quantile")
RG2 <- log(RG2)
plotMA3by2(RG2, device="pdf")
This produces the following error:
> plotMA3by2(RG2, device="pdf")
Error in MA$weights : $ operator is invalid for atomic vectors
Calls: plotMA3by2
Execution halted
I have managed to successfully generate a box plot and a HCA on the
normalized data.
Thanks again!
______________________________________________________________________
The information in this email is confidential and intend...{{dropped:4}}
More information about the Bioconductor
mailing list