Analysis tips for two-color oligo arrays with common reference and dye swap
1
0
Entering edit mode
@arun-kommadath-2986
Last seen 10.2 years ago
Dear all I would appreciate some feedback regarding this analysis I have done on data from a microarray experiment conducted using two-color oligo arrays with common reference and dye swap. As an example, consider 4 individuals belonging to two different physiological states (2 of each). I would like to find the differentially expressed genes between the 2 states. The targets file is as follows: Name Cy3 Cy5 Array1 State1 Ref Array2 Ref State1 Array3 State1 Ref Array4 Ref State1 Array5 State2 Ref Array6 Ref State2 Array7 State2 Ref Array8 Ref State2 Array1 and Array2 are technical replicates but dye swapped. Similarly the other pairs of slides are dye swapped technical replicates. The design matrix would be: State1 State2 Array1 -1 0 Array2 1 0 Array3 -1 0 Array4 1 0 Array5 0 -1 Array6 0 1 Array7 0 -1 Array8 0 1 Background correction was done using 'normexp+offset' method. As spatial variation and intensity-based trends were observed in diagnostic plots, within array normalization was done using print tip loess method. Between array normalization was done using quantile method. Spots flagged -75 and below have been weighted zero. Further analysis was done as mentioned in section 8.2 'Technical Replication' and section 8.4 'Two Groups: Common Reference' of LIMMA user's guide (Smyth et al., 2007): biolrep <- (1,1,2,2,3,3,4,4) corfit <- duplicateCorrelation(MA, design, ndups = 1, block = biolrep) fit <- lmFit(MA, design, block = biolrep, cor = corfit$consensus, weights=MA$weights) cont.matrix <- makeContrasts(State1vsState2=State1-State2, levels=design) fit <- contrasts.fit(fit, cont.matrix) fit <- eBayes(fit) topTable(fit, number = 30, sort.by = "M", adjust.method = "BH") I found the corfit$consensus value to be 0.09 and not the expected negative value for dye swaps. From an earlier post in this mailing list, I understand that this value would be problematic only if much larger then 0. I have also read in a post from yesterday where Gordon replied that LIMMA isn't smart enough to handle the dye-swaps and the blocking at the same time. So, I would like to know if my analysis with the above code is reliable and complete? Looking forward to some tips on the analysis steps. Thanks Arun PhD student, Wageningen University The Netherlands
Microarray Normalization Microarray Normalization • 1.2k views
ADD COMMENT
0
Entering edit mode
Paul Leo ▴ 970
@paul-leo-2092
Last seen 10.2 years ago
"I have also read in a post from yesterday where Gordon replied that LIMMA isn't smart enough to handle the dye-swaps and the blocking at the same time. So, I would like to know if my analysis with the above" I think *specifically* Limma can't handle "Unbalanced" dye-swaps and blocking. So each and every blocked pair must be dye swapped to anaylse using duplicateCorrelation etc (the way you describe here) .... this is your experiment design , so you're ok. The other experiment has 2 x dye swaps within 4 tech replicates per sample , so a trick was needed to include both of these effects over each 4 sample set.... Cheers Paul code is reliable and complete-----Original Message----- From: bioconductor-bounces@stat.math.ethz.ch [mailto:bioconductor-bounces at stat.math.ethz.ch] On Behalf Of Arun Kommadath Sent: Thursday, August 14, 2008 5:34 PM To: bioconductor at stat.math.ethz.ch Subject: [BioC] Analysis tips for two-color oligo arrays with commonreference and dye swap Dear all I would appreciate some feedback regarding this analysis I have done on data from a microarray experiment conducted using two-color oligo arrays with common reference and dye swap. As an example, consider 4 individuals belonging to two different physiological states (2 of each). I would like to find the differentially expressed genes between the 2 states. The targets file is as follows: Name Cy3 Cy5 Array1 State1 Ref Array2 Ref State1 Array3 State1 Ref Array4 Ref State1 Array5 State2 Ref Array6 Ref State2 Array7 State2 Ref Array8 Ref State2 Array1 and Array2 are technical replicates butargetsa1,a2,t dye swapped. Similarly the other pairs of slides are dye swapped technical replicates. The design matrix would be: State1 State2 Array1 -1 0 Array2 1 0 Array3 -1 0 Array4 1 0 Array5 0 -1 Array6 0 1 Array7 0 -1 Array8 0 1 Background correction was done using 'normexp+offset' method. As spatial variation and intensity-based trends were observed in diagnostic plots, within array normalization was done using print tip loess method. Between array normalization was done using quantile method. Spots flagged -75 and below have been weighted zero. Further analysis was done as mentioned in section 8.2 'Technical Replication' and section 8.4 'Two Groups: Common Reference' of LIMMA user's guide (Smyth et al., 2007): biolrep <- (1,1,2,2,3,3,4,4) corfit <- duplicateCorrelation(MA, design, ndups = 1, block = biolrep) fit <- lmFit(MA, design, block = biolrep, cor = corfit$consensus, weights=MA$weights) cont.matrix <- makeContrasts(State1vsState2=State1-State2, levels=design) fit <- contrasts.fit(fit, cont.matrix) fit <- eBayes(fit) topTable(fit, number = 30, sort.by = "M", adjust.method = "BH") I found the corfit$consensus value to be 0.09 and not the expected negative value for dye swaps. From an earlier post in this mailing list, I understand that this value would be problematic only if much larger then 0. I have also read in a post from yesterday where Gordon replied that LIMMA isn't smart enough to handle the dye-swaps and the blocking at the same time. So, I would like to know if my analysis with the above code is reliable and complete? Looking forward to some tips on the analysis steps. Thanks Arun PhD student, Wageningen University The Netherlands _______________________________________________ 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
ADD COMMENT

Login before adding your answer.

Traffic: 481 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6