[BioC] limma design matrix

michael watson (IAH-C) michael.watson at bbsrc.ac.uk
Fri Feb 27 17:42:46 MET 2004


First off, let me say that i think limma is a quite brilliant package and I use it a lot.  However, one of the biggest obstructions to using limma for the lay biologist is an inability to understand the design matrix.  Although there is a lot of documentation, showing the design matrix for a number of example problems, there is no discussion as to how that design matrix was constructed i.e. the logical thought processes that went into it.

For the two-sample experiment given in the UserGuide, I understand that there must be one row per array in my design matrix and the columns represent the coefficients I want to calculate.  I represent the differences in the factors with 1's and 0's.  Great, this is pretty similar to how I do it for aov().

But then, all of a sudden, for the factorial experiment the design matrix not only has -1's in there, but also a column for the interactions.  How do I decide which array/factor combination gets a 1, a 0 or a -1?  

Let me put this in perspective.  I have a 3 factor experiment where the factors are animal, infected/uninfected and time.  All samples were hybridised against a common reference.  For analysis of variance, all I do is set up a data.frame that looks like this for each gene:

  data c b t
1  2.9 1 1 1
2  2.7 1 0 2
3  2.8 1 1 1
4  3.0 1 0 2
5 -3.0 0 1 1
6 -3.5 0 0 2
7 -4.0 0 1 1
8 -5.0 0 0 2

where data is my data, and c, b and t are my factors, and then feed in something like:

(aov.aov <- aov(data ~ c*b*t, aov.data))

and I get F-statistics for c, b and t and all possible interactions.  

Because of the limitations of analysis of variance for my microarray data, I would like to use limma.  Is there any *more* documentation I can look at that will tell me the steps to take to work out what my limma design matrix will look like?

Kind regards


More information about the Bioconductor mailing list