Difference between logFC in limma-voom and weighted limma-voom
1
0
Entering edit mode
@richardallenfriedmanbrooklyn-24118
Last seen 22 days ago
United States

Dear list,

I got a considerably different log2 Fold change with ordinary limma-voom and weighted limma-voom. Am I correct that for weighted limma voom the log2 FC is

log2 FC= average over experiment samples of (sample.weightlog2((counts+0.5)/(total.counts+1))/norm.factor))) -average over control samples of (sample.weightlog2((counts+0.5)/(total.counts+1))/norm.factor)))

and for unweighted limma-voom log2FC = the same quantity without the sample weights?

If so, I calculated both quanities for a gene in Excel. For unweighted limma-voom my excel calculation of log2FC was only 0.05 off from the one output by the program.

But for weighted limma-voom, my calculation was 0.7 off from that output by the program. Am I using the wrong formula?

Thanks and best wishes,

Rich

Richard Friedman

Columbia University Cancer Center

limma voom weighting • 212 views
ADD COMMENT
1
Entering edit mode
@gordon-smyth
Last seen 1 hour ago
WEHI, Melbourne, Australia

No, your formula is not correct, for several reasons. voom is always a weighted method, whether it includes sample weights or not. The sample weights are incorporated into the precision weights, not applied separately. The norm.factors modify the library sizes, not the CPM ratio. lmFit uses weighted least squares regression.

voom returns the log2CPM values and the precision weights, so you could easily enough run lm() with those values for a particular gene to reproduce limma's logFC values.

Just as a postscript, I now recommend the voomLmFit() interface over the original voom() function. voomLmFit() allows you to turn sample weights on and off just by setting sample.weights TRUE or FALSE.

ADD COMMENT
0
Entering edit mode

Gordon,

Thank you. Your explanation is most helpful.

Best wishes,

Rich

Login before adding your answer.

Traffic: 565 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