Surrogate Variable Analysis for Complex Experimental Design
1
1
Entering edit mode
9.2 years ago
tucanj ▴ 100

I am conducting differential expression analysis in limma for a time course microarray experiment. I have 3 time points (1,2,3) and two conditions (control,disease). My contrast is formulated as:

pheno<-factor(c("disease.1","disease.1","disease.2","disease.2","disease.3","disease.3","control.1","control.1","control.2","control.2","control.3","control.3")
​model<-model.matrix(~0+pheno)
contrast<-makeContrasts(disease.1-control.1, disease.2-control.2, disease.3-control.3,levels=model)
fit<-lmFit(expression,model)
fit2<-contrasts.fit(fit,contrast)
fit2<-eBayes(fit2)

topTableF(fit2)

How can I apply SVA with this experimental setup? Or is there an alternative? The challenge I am facing is SVA seems designed for two class experiments, because the null model requires leaving out the variable of interest, however in this case there isn't one variable but many.

Thanks!

sva R limma • 3.4k views
ADD COMMENT
1
Entering edit mode
9.2 years ago

You apply the sva function to a normalised matrix of expression values. I'm assuming that you're just looking for potential surrogate variables and not trying to correct for a known batch effect?

Edit: Also, I'd recommend you check out the time course section of the limma user guide

ADD COMMENT
0
Entering edit mode

Thanks for the response! Yes not adjusting for any known batch effects. I didn't realize that SVA did not require a null model, but I just tested it an it works (another thing I had to change was to include an intercept in my model because sva did not work without). As well, I purposefully chose this model but thanks for referring me to limma user guide.

ADD REPLY

Login before adding your answer.

Traffic: 2279 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6