Hi Sandhya,
Yes, limma should work fine on this data, although you are on the lower boundary in terms of number of genes. Theoretically, the minimum number of genes for the empirical Bayes procedure to be beneficial is three. Four genes is probably the minimum from a practical point of view.
You may already know how to use duplicateCorrelation. If you have a simple before vs after paired comparison with some unmatched samples, then you could proceed like this:
design <- model.matrix(~treatment)
dupcor <- duplicateCorrelation(y, design, block=patient)
fit <- lmFit(y, design, block=patient, correlation=dupcor$consensus)
fit <- eBayes(fit)
topTable(fit,coef=2)
Be sure to check that dupcor$consensus is greater than zero.
We used this strategy to compare tumour vs normal tissue in the presence of unmatched samples in
http://www.ncbi.nlm.nih.gov/pubmed/17236199
although that was microarray data rather than PCR.
Best wishes
Gordon
Wow, I wasn't aware that limma could be beneficial for such a small number of genes. That's good to know.
Hi Ryan,
Here's a simulated example, just to illustrate:
Simulate 50 patients with before and after treatment:
Drop 15 observations as missing:
Theoretically the correlation should be zero.
The perfect solution here is to pool the variances which would give df.total = 4*83 = 332. The estimated value is slighty more conservative. limma takes care never to use df.total greater than the pooled value.
No DE, which is correct.
Cheers
Gordon