SEQanswers

SEQanswers (http://seqanswers.com/forums/index.php)
-   RNA Sequencing (http://seqanswers.com/forums/forumdisplay.php?f=26)
-   -   Cuffnorm's FPKM - advisable to perform TPM conversion? (http://seqanswers.com/forums/showthread.php?t=75477)

farri 04-16-2017 09:34 AM

Cuffnorm's FPKM - advisable to perform TPM conversion?
 
Hi,

I performed a detailed time-course mRNA-seq experiment without any sequencing replicates (the input RNA, however, was a pool of equal amounts of total RNA from biological replicates). As I don't have any replicate information for my sequencing data, I refrained from doing any statistical testing.

I used the Tuxedo protocol for data analysis (Trapnel et al, 2012), i.e. read mapping with TopHat2, transcript assembly by Cufflinks for each individual time point, executed Cuffmerge afterwards, and - instead of Cuffdiff, due to the absence of replicates - I ran Cuffquant and Cuffnorm, the later with default settings.

As a result, Cuffnorm outputs sample-normalized FPKM values. It was brought to my attention by Wagner et al (2012), that TPM values are preferable to FPKM values. Converting my FPKM data to TPM values according to https://haroldpimentel.wordpress.com...ression-units/ changes data analysis partly significantly.

I wonder if it is "allowed" to convert cuffnorm-normalized FPKM values to TPM?
And does it make any sense to convert cuffnorm-FPKM values to TPM?
Or is the cuffnorm-normalization already sufficient to enable robust sample-wise comparison of changes in transcript abundances, hence FPKM to TPM conversion would not be necessary?

Dario1984 04-24-2017 10:00 PM

Of course it makes a substantial difference. TPM doesn't normalise by the length of the gene, FPKM does. Are you comparing between genes, such as by plotting the gene expression values in a heatmap? Then, you need to use FPKM. Otherwise, the heatmap may be misleading. Or, are you doing a differential expression analysis, such as calculating the fold changes of each gene between two timepoints? Then, TPM is fine, since you are comparing the same gene which has the same length between two timepoints (assuming that no alternative splicing is occurring).

farri 04-26-2017 04:44 AM

The focus of my study is on fold change(FC)-based evaluation of transcriptional changes, thus intra-gene comparison. I am interested in genes which are strongly differentially regulated between two conditions. However, I also do some inter-gene comparison, such as comparing the transcript abundance of transcript A with transcript B, in order to determine which transcript is more abundant. For instance, if transcript A is up-regulated 10-fold, but from FPKM 1 to FPKM 10, yet transcript B is up-regulated 3-fold from FPKM 1000 to FPKM 3000, I would conclude that the up-regulation of transcript B might be metabolically more relevant. However, for most cases, I stick only to FC-values.

My key concern is that the use of TPM is advocated over FPKM. FPKM can be easily converted to TPM by dividing the each FPKM value by the sum of all FPKM values of the respective sample, and multiplying this by 1e6. This yields TPM.

However, Cufflinks internally has complicated statistics to compute FPKM values. Therefore I wonder if I violate any rules by converting FPKM to TPM? Does this particularily apply as I ran Cuffnorm, which already performs a normalization?

What do you recommend? Stick to Cuffnorm's FPKM values? Or perform the simple FPKM-to-TPM conversion from above and use TPM values instead?

Dario1984 04-26-2017 05:00 PM

I would use the FPKM you obtained from Cufflinks. Before you do, check the range of FPKM values calculated by Cufflinks. We find some are theoretically impossible values by considering how many reads the sample had and assuming that they all mapped to only the gene with the highest FPKM value determined by Cufflinks, then ask "what would the theoretical maximum FPKM be"? Cufflinks sometimes calculates FPKMs that are unrealistically large. If, however, for your dataset, Cufflinks calculates FPKMs that seem reasonable, then just use those. Although TPM is more popular these days, there's no reason why it's more valid than FPKM, if you are confident that the FPKM values are being calculated correctly by the software you're using.

sdriscoll 04-26-2017 10:52 PM

Quote:

Originally Posted by Dario1984 (Post 206673)
Of course it makes a substantial difference. TPM doesn't normalise by the length of the gene, FPKM does. Are you comparing between genes, such as by plotting the gene expression values in a heatmap? Then, you need to use FPKM. Otherwise, the heatmap may be misleading. Or, are you doing a differential expression analysis, such as calculating the fold changes of each gene between two timepoints? Then, TPM is fine, since you are comparing the same gene which has the same length between two timepoints (assuming that no alternative splicing is occurring).

I know this was cleared up in the post following it but I should correct you in that TPM is transcript length normalized just as FPKM. As pointed out the two are related by a constant factor, X. TPM = FPKM*X where X = 1e6/[sum of all FPKM of a sample].

sdriscoll 04-26-2017 11:07 PM

farri-

Converting FPKM to TPM has zero effect on whatever careful way cufflinks calculated those FPKM values. It's actually not the FPKM that's carefully calculated within cufflinks but the estimated number of fragments assigned to a transcript. They also calculate an effective length for each transcript which should end up being roughly the transcript length less the median fragment length from your alignments.

As a side note here which may explain the behavior that Dario1984 sees the so-called "effective" length scaling of the actual read counts assigned to transcripts does change the final total read count of the experiment because:
Code:

effective_reads = (reads)*(length/effective_length)
which means shorter transcripts will have greater inflation than longer and ALL will be inflated to some extent.

Back to my point...

It's really only advisable to "trust" fold changes between samples or groups calculated based on normalized read counts. Either that or the fold-change values calculated by cuffdiff. While FPKM and TPM values can give you a general idea I can guarantee that fold changes calculated from those values will be misleading when the change less than 2 fold. I have seen many times a negative fold change calculated by TPM that is actually a positive fold change when calculated from normalized counts. It has long been established that the count data normalization procedures are most reliable for detecting differential expression (which is fold change) and, in fact, cuffdiff uses those normalizations internally when performing differential testing and computing fold change values.

Dario1984 04-27-2017 12:00 AM

It depends on what TPM is an abbreviation for. It sometimes means Tags Per Million and other times means Transcripts Per Million. I was thinking about Tags Per Million but the question asked was probably about Transcripts Per Million, so my recommendation may not be ideal.


All times are GMT -8. The time now is 07:43 AM.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.