[BioC] Calculation of t-tests for factorial design

Pascal Gellert pascal.gellert at mpi-bn.mpg.de
Fri Sep 10 16:04:12 CEST 2010

Hi all,

Unfortunately I cannot find out how limma calculates t-tests for my 
factorial design of micrarrays, but let's begin from the start:

I have the following microarray experiment:

                 WT    Knock-Out
Treated        2    2
Untreated        2    2

This way I can make the following comparisons:

WT Treated / WT Untreated: This shows me, what the effect of the 
treatment itself is.
Knock-out Treated / Knock-out Untreated: To see what effect the 
treatment has on Knock out animals.
(Knock-out Treated / Knock-out Untreated) / (WT Treated / WT Untreated): 
The effect of treatment to Knock-Out animals under consideration of 
changes of gene expression due to treatment in WT animals.

So my main interest lies in the last comparison. I did this with the 
following code:

targets <-read.table(file="Targets.csv", sep="\t", header=T, 
row.names=1, as.is=T)
TS <- paste(targets$Strain, targets$Treatment, sep=".")
TS <- factor(TS, levels=c("wt.non","ko.non","wt.treat","ko.treat"))

design <- model.matrix(~0+TS)
colnames(design) <- levels(TS)
fit <- lmFit(eset, design)

cont.matrix <- makeContrasts(
WT.nonVStreat =wt.non-wt.treat,
fit2 <- contrasts.fit(fit, cont.matrix)
fit2 <- eBayes(fit2)

eset contains my expression values in log2 scale.
The contrast are calculated by
as I described above. For all 3 comparisons, eBayes calculates t-tests, 
but for the last comparison, which values are used for the t-test?
All signals of ko.non and ko.treat compared to wt.non and wt.treat? I 
think it's calculated in a completely different way, does anyone know how?

Best regards,


More information about the Bioconductor mailing list