[BioC] First time use of limma for two-color agilent array analysis
Calin-Jageman, Robert
rcalinjageman at dom.edu
Thu Feb 27 04:50:03 CET 2014
I've been working on a two-color analysis of a custom-printed agilent array. I'm examining gene expression in CNS samples from Aplysia californica that have undergone unilateral sensitization training. I've got 8 animals, each with a sample from the trained and untrained side of the CNS. Each pair is hybridized to one two-color array.
With the limma user guide and Google, I came up with the following script which seems to give quite reasonable results:
library(limma)
targets <- readTargets("targets.txt")
RG <- read.maimages(targets, source="agilent")
RG <- backgroundCorrect(RG, method="normexp", offset=16)
MA <- normalizeWithinArrays(RG, method="loess")
MA2 <- MA[MA$genes$ControlType==0,]
MA2.avg <- avereps(MA2, ID=MA2$genes$GeneName)
fit <- lmFit(MA2.avg)
fit2 <- eBayes(fit)
allgenes <- topTable(fit2,number=nrow(fit2))
write.table(allgenes,file="all_genes.txt")
# I know topTable is not the only output to examine; this is just a start.
Couple of quick questions for anyone out there who is reading:
* I ended up with a much larger list of regulated transcripts than when I conducted a similar analysis in GeneSpring. In GeneSpring I ended up with ~400 transcripts regulated at with a FDR of 0.05. With limma, though, I get nearly 1,000 at FDR = 0.01! Many of these, though, have fairly small fold-changes. In fact, when I filter for at least 1.5x change, the list shrinks dramatically to about 60 transcripts. Is the much larger list I'm initially getting due to the enhanced power of using the bayes approach for estimating sampling error, or have I failed to properly adjust for multiple comparisons in this script?
* My qPCR data from the same samples fits the limma analysis MUCH better. Over 15 transcripts where I've done qPCR on the same samples (mix of predicted up/down/stable), the r2 with GeneSpring estimates is about 0.5; with the limma estimates it's 0.83! Is limma really this much better?
* I'm not sure if I fully understand the choice of offset in background correction. I've seen no offset, offsets of 16, 30.... Despite reading the documentation on the function, it's not clear to me how users select an offset or if it's actually worth using. Any feedback?
Cheers,
Bob
========
Robert Calin-Jageman
Associate Professor, Psychology
Neuroscience Program Director
Dominican University
rcalinjageman at dom.edu
708.524.6581
More information about the Bioconductor
mailing list