Does limma calculate pvalues using log2 fold changes or with linear values?
2
2
Entering edit mode
serpalma.v ▴ 60
@serpalmav-8912
Last seen 5 months ago
Germany

Dear community,

I am currently trying to figure out this question. I have tried different keywords but I do not seem to find the right thread. 

What I want to know is:

- Does limma arrives to a pvalue by using the log2 scale of the normalized array data?

- Does limma arrives to a pvalue using the normalized array data directly and then shows the differences as log2 fold changes in the top table?

If you know the proper thered to refer to, that will be of great help, else, I am grateful for your responses.

 

Thanks!

limma pvalue log2fc log2 • 3.9k views
ADD COMMENT
4
Entering edit mode
Aaron Lun ★ 27k
@alun
Last seen 5 hours ago
The city by the bay

limma - or specifically, lmFit and its downstream functions - will operate on whatever matrix of values you give it. If you're working with microarray data, then - as svlachavas has mentioned - you should be giving lmFit the log-transformed intensities, for various reasons. lmFit will not log-transform the values for you, as it assumes that's already been done. Thus, it's worth checking what was done upstream to ensure that limma is running on the correct values. For example, if you're using normalizeBetweenArrays before running lmFit, then the former function will log-transform the data if your input is an EListRaw object, but not if your input is a matrix. (Specifically, the function returns normalized log-transformed intensities, so there's no distinction between normalization and log-transformation in all of the downstream functions.) In summary, assuming you've done the analysis correctly, then the p-values from limma will be computed from the log-intensities.

ADD COMMENT
0
Entering edit mode

Thank you very much Aaron,

I normalized the array data with the RMA algorithm.

According to this thread, RMA log transforms the data:

log transform in RMA normalization

ADD REPLY
0
Entering edit mode

Yes, that's correct, the RMA algorithm returns values on a log scale.

ADD REPLY
0
Entering edit mode
svlachavas ▴ 800
@svlachavas-7225
Last seen 2 days ago
Germany/Heidelberg/German Cancer Resear…

Dear Serpalma,

i don't know where you heard or read anything about "linear values" ? Or also to which technology you refer to ? For instance about microarray gene expression data, topTable() from limma provides log2 fold changes ("effect sizes") about your comparisons of interest, along with the relative p-values . But for more specific details and not generalizations, you should definately read the 2 papers below:

1)  http://www.statsci.org/smyth/pubs/ebayes.pdf

2) http://www.ncbi.nlm.nih.gov/pubmed/25605792

Hope that solves any general questions

Best,

Efstathios

ADD COMMENT
0
Entering edit mode

Dear Efstathios

using the "linear" term was probably the wrong wording, I meant to say "not log scaled". 

Best

ADD REPLY
0
Entering edit mode

Actually, if you don't specify your exact design i can't make any general assumptions-on the other hand, for instance about microarrays, after normalization in the vast majority of existed methodologies,the expression data are already log2-transformed, which is no related with limma. If you are also interested in RNA-seq, you can read the specific part below in the second paper:

"Traditionally,RNA-seq data require specialized software based on the negative binomial or similar distributions .limma however is able to analyse RNA-seq read counts with high precision by converting counts to the log-scale and estimating the mean-variance relationship empirically.The mean-variance trend is converted by the voom function into precision weights, which are incorporated into the analysis of log-transformed RNA-seq counts using the same linear modelling commands as for microarrays".

ADD REPLY

Login before adding your answer.

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