Hi Gordon,

Thanks for pointing me in the direction of the reference. I've had a chance
to browse the reference article and it appears to refer mostly to duplicate
(or triplicate, etc.) spots on the same array. Does the procedure still
apply for technical replicates across separate arrays? The example in the
user's guide seems to refer to technical replicates on separate arrays. I'm
supposing that local effects causing correlation do not apply to technical
replicates across arrays, but nonetheless we would expect correlation
between technical replicates.

I can give you an example.

An experimental design was constructed in a way that we have two treatments.
RNA samples are collected from three biological replicates. Specifically
three RNA samples are collected from each biological replicate (these are
the technical replicates).
For each RNA sample, one treatment is labeled with a red dye and the other
treatment is labelled with green dye.

The example forms the basis for a two colour microarray experiment. Could
the experimenter use the code

> biolrep <- c(1, 1, 1, 2, 2, 2, 3, 3, 3)
> corfit <- duplicateCorrelation(MA, ndups = 1, block = biolrep)
> fit <- lmFit(MA, block = biolrep, cor = corfit$consensus)
> fit <- eBayes(fit)
> topTable(fit, adjust = "BH")

Matt

On Wed, Feb 12, 2014 at 11:43 AM, Gordon K Smyth <smyth@wehi.edu.au> wrote:

> Matt,
>
> A reference is given on the help page for duplicateCorrelation.
>
> Gordon
>
>
>  Date: Tue, 11 Feb 2014 13:03:23 -0800 (PST)
>> From: "Matt Jones [guest]" <guest@bioconductor.org>
>> To: bioconductor@r-project.org, matthew.jnes@gmail.com
>> Subject: [BioC] How limma Deals With Correlation Across Replicates
>>
>>
>> Hi,
>>
>> Section 11.3 of the limma User's guide introduces the concept of
>> correlation across technical replicates. To address replicate correlation,
>> some extra code is needed.
>>
>> The sample code is given as,
>>
>>  biolrep <- c(1, 1, 2, 2)
>>> corfit <- duplicateCorrelation(MA, ndups = 1, block = biolrep)
>>> fit <- lmFit(MA, block = biolrep, cor = corfit$consensus)
>>> fit <- eBayes(fit)
>>> topTable(fit, adjust = "BH")
>>>
>>
>> Can anybody explain what is happening "under the hood" when the above
>> code is executed? The user's guide asserts that this is "analogous to mixed
>> model analysis of variance", but can somebody further this point?
>>
>> Thanks.
>>
>> Matt
>>
>> -- output of sessionInfo():
>>
>> No sessionInfo().
>>
>
> ______________________________________________________________________
> The information in this email is confidential and inte...{{dropped:10}}

