[BioC] how to use limma function duplicateCorrelation() in Separate Channel Analysis of Two-Color Data

Gordon K Smyth smyth at wehi.EDU.AU
Tue Jan 13 02:54:08 CET 2009


> Date: Mon, 12 Jan 2009 09:40:33 +0100
> From: Kun Zhang <zklsp at hotmail.com>
> Subject: [BioC] how to use limma function duplicateCorrelation() in
> 
> To: <bioconductor at stat.math.ethz.ch>
>
>
> Dear All,
>
> Now I'm using limma to do microarray analysis.
>
> In limma User's Guide (ver. 22 October 2008), Chapter 9, there is only 
> one case for "Separate Channel Analysis of Two-Color Data".

> My question is, if there is duplication spots within each array (e.g. 3 
> spots/gene) , how to use duplicateCorrelation() to correct within-array 
> replicate spots in this case?

Dear Kunlin,

The answer is that you can't.  limma doesn't offer that facility. 
Instead you should average over the spots using avedups() before doing the 
separate channel analysis, or else of course simply analyse the data as if 
the duplicates were different probes.

Best wishes
Gordon

> Best Wishes,
>
> Kunlin Zhang
>
> I also copy the information of this case:
>
> FileName Cy3 Cy5
> File1 wt.young wt.old
> File2 wt.old wt.young
> File3 mu.young mu.old
> File4 mu.old mu.young
>
>> MA <- normalizeBetweenArrays(MA, method="Aquantile")
>> targets2 <- targetsA2C(targets)
>> targets2
> channel.col FileName Target
> File1.1 1 File1 wt.young
> File1.2 2 File1 wt.old
> File2.1 1 File2 wt.old
> File2.2 2 File2 wt.young
> File3.1 1 File3 mu.young
> File3.2 2 File3 mu.old
> File4.1 1 File4 mu.old
> File4.2 2 File4 mu.young
>
> The following code produces a design matrix with eight rows and four columns:
>
>> u <- unique(targets2$Target)
>> f <- factor(targets2$Target, levels=u)
>> design <- model.matrix(~0+f)
>> colnames(design) <- u
>
> Inference proceeds as for within-array replicate spots except that the correlation to be estimated
> is that between the two channels for the same spot rather than between replicate
> spots.
>
>> corfit <- intraspotCorrelation(MA, design)
>> fit <- lmscFit(MA, design, correlation=corfit$consensus)
>
> Subsequent steps proceed as for log-ratio analyses. For example if we want to compare wildtype
> young to mutant young animals, we could extract this contrast by
>
>> cont.matrix <- makeContrasts("mu.young-wt.young",levels=design)
>> fit2 <- contrasts.fit(fit, cont.matrix)
>> fit2 <- eBayes(fit2)
>> topTable(fit2, adjust="BH")



More information about the Bioconductor mailing list