Voom: estimation of mean-variance relationship with gene expression data normalized with methods other than cpm
1
0
Entering edit mode
krishna312 • 0
@krishna312-6866
Last seen 8.0 years ago
Finland

Hi,

I understand that voom normalizes the raw count data to log2 cpm data and then estimates the mean-variance relationship from the normalized data.

I want to know if there is strong bonding between log2 cpm data and estimation of mean-variance relationship? In other words, will I get sensible results if I modify the voom code such that it accepts normalized data such as TMM normalized data and then it estimates the mean-variance relationship from TMM normalized data?

I am developing a pipeline and want to implement voom. But, I want to give users option to input normalized data (with their choise of normalization method) if they wish. However, I am not sure if mean-variance relationship will still be as good as that calculated from log2 cpm data.

I will appreciate for any information in this regard!
Thanks in advance!!
 

limma voom • 1.6k views
ADD COMMENT
3
Entering edit mode
@james-w-macdonald-5106
Last seen 7 hours ago
United States

If you pass a DGEList to voom that has library size information that has been modified by TMM (note that TMM doesn't normalize the count data - it modifies the library sizes), then voom will use those data to calculate the cpm, before taking logs. This is the default for voom, so by definition the authors think this is a sensible thing to do, and you don't have to modify anything for this to occur.

You can also use any of the methods available to normalizeBetweenArrays for single color arrays. So you don't have to 'implement' voom to give your users the option of normalization methods, as it is already implemented in such a way to allow that to happen.

As an aside, have you read the help page for voom? It seems to me that this is clearly explained on the help page, but perhaps something is confusing?

ADD COMMENT
1
Entering edit mode

To add to James' answer; the voom authors probably didn't want to support arbitrary normalization schemes, because there's no guarantee that the users will normalize in a sensible manner that preserves the mean-variance relationship. See A: Differential expression of RNA-seq data using limma and voom() for a discussion of what happens when, say, FPKMs are used for normalization. Sometimes, having more flexible code just gives your users more rope.

ADD REPLY

Login before adding your answer.

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