[BioC] Limma double paired analysis

James W. MacDonald jmacdon at med.umich.edu
Fri Sep 19 14:52:11 CEST 2008


Hi John,

john seers (IFR) wrote:
> 
> Hello All
> 
> I am having some difficulty in trying to use limma for a paired
> analysis. Can anybody suggest an approach that would work?
> 
> The arrays are Affymetrix.
> 
> The experiment arrays look like:
> 
> Volunteer1              Ctrl <---------->Placebo<-------Time
> passes------>Ctrl<------------>Drug
> Volunteer2              Ctrl <---------->Placebo<-------Time
> passes------>Ctrl<------------>Drug
> Volunteer3              Ctrl <---------->Drug<----------Time
> passes------>Ctrl<------------>Placebo
> ...
> 
> That is a control sample is taken. A treatment is given - Placebo or
> Drug. Another sample is taken. A suitable time period passes and this is
> repeated but with the Placebo or Drug treatments reversed.
> 
> How can this be analysed?
> 
> Looking at the Limma User Guide 8.3 Paired Samples looks to be a good
> start. But is it possible to do some form of double pairing analysis?
> That is I can pair the Ctrl arrays with their paired treatment. But then
> I want to pair the Placebo with the Drug. How can I do this using limma?

What you want to do is identical to the part of the User's Guide that 
you quote. The only difference is that the blocking will be of size four 
instead of size two. So the 'block' factor would contain four 1's 
corresponding to volunteer 1, then four 2's for volunteer 2, etc.

What this does is to remove the average expression value for each 
volunteer so you can compare the different treatments directly. The 
assumption here being that the only difference between the patients is 
their average expression level (e.g., the treatment differences are 
comparable, but the baseline expression levels may be different).

You can do a slightly more sophisticated analysis by using 
duplicateCorrelation() and the block argument of lmFit()to fit a glm 
rather than a fixed effects model as well.

Best,

Jim


> 
> 
> ========================================================================
> =============
> 
> So far I have something like the following, if it helps. How can I
> factor in that Drug Treatment and the Placebo treatment are paired? 
> 
> 
> Treatment<-c("Drug", "Placebo", "ACtrl", "ACtrl", "ACtrl", "Drug",
> "ACtrl",
>     "Placebo", "ACtrl", "Placebo", "ACtrl", "Drug", "Placebo", "ACtrl",
> "ACtrl",
>     "Drug", "Drug", "ACtrl", "ACtrl", "Placebo", "Placebo", "ACtrl",   
>     "Drug", "ACtrl", "Drug", "Placebo", "ACtrl", "ACtrl", "ACtrl",
> "Placebo",
>     "ACtrl", "Drug", "ACtrl", "Placebo", "Drug", "ACtrl", "Placebo",
> "ACtrl",
>     "ACtrl", "Drug", "Placebo", "ACtrl", "Drug", "ACtrl", "ACtrl",
> "ACtrl",    
>     "Drug", "Placebo") 
> 
> 
> Pairing<-c("A13", "B13", "B13", "A13", "A17", "B17", "B17", "A17", "B8",
> "A8",  "A8",
>     "B8",  "B18", "B18", "A18", "A18", "A6",  "B6",  "A6",  "B6",
> "A33", "B33",
>     "B33", "A33", "A27", "B27", "A27", "B27", "A22", "B22", "B22",
> "A22", "B11", "A11",
>     "B11", "A11", "A28", "A28", "B28", "B28", "A16", "A16", "B16",
> "B16", "A20", "B20", "A20", "B20")
>    
> 
> Pairing<-factor(Pairing)
> Treatment<-factor(Treatment)
> design<-model.matrix(~ 0 + Pairing + Treatment)
> fit<-lmFit(eset, design)
> contrast.matrix<-makeContrasts(AbovePlacebo = TreatmentDrug -
> TreatmentPlacebo, levels=design)
> fit2<-contrasts.fit(fit, contrast.matrix)
> eb<-eBayes(fit2)
> tt<-topTable(eb)
> 
> Any help gratefully received.
> 
> 
> Regards and thanks
> 
> 
> John Seers
> 
> 
> 
> 
> ---
> 
> John Seers
> Bioinformatics & Statistics
> Institute of Food Research
> Norwich Research Park
> Colney
> Norwich
> NR4 7UA
> 
> Location: IFR1 N102
> PC Machine ID: N198
> 
> 
> tel +44 (0)1603 251497
> fax +44 (0)1603 507723
> e-mail john.seers at bbsrc.ac.uk                        
> e-disclaimer at http://www.ifr.ac.uk/edisclaimer/
> 
> Web sites:
> 
> www.ifr.ac.uk  
> www.foodandhealthnetwork.com
> 
> _______________________________________________
> 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

-- 
James W. MacDonald, M.S.
Biostatistician
Hildebrandt Lab
8220D MSRB III
1150 W. Medical Center Drive
Ann Arbor MI 48109-0646
734-936-8662



More information about the Bioconductor mailing list