Question: Conversion from counts to FPKM
gravatar for chiara.facciotto
10 months ago by
chiara.facciotto0 wrote:


I am trying to use DESeq2 to convert raw counts to fpkm, so I can compare gene aboundance across genes and not only across samples. I have a couple of questions on how to do so:

  1. Should I first normalize the counts and transform them with vst and then use the fpkm() function, or should I simply input the raw counts and the fkpm() function will then take care of normalization as well?
  2. How do I make sure that the genes in my GRanges object containing the gene lengths match the genes in the dss object?

Thank you!

ADD COMMENTlink modified 7 months ago by Ahmed Alhendi0 • written 10 months ago by chiara.facciotto0
Answer: Conversion from counts to FPKM
gravatar for Michael Love
10 months ago by
Michael Love25k
United States
Michael Love25k wrote:

You should input the raw counts and then use `fpkm()` to generate FPKM values. The default is to use a robust estimate of library size (median ratio normalization) in place of the total count which is a sub-optimal estimator. Note that FPKM are not variance stabilized.

It is up to you to provide exonic basepair lengths, we don't have any code for that. An easier approach is to use a pipeline, such as Salmon followed by tximport, which keeps all the information together for you (and provides a much more accurate estimate of the length of the gene, using the average transcript length, as opposed to the sum of the exonic basepairs).

ADD COMMENTlink written 10 months ago by Michael Love25k

Chiara, as per Michael, FPKM units are not variance stabilised, and neither are they comparable across samples. There is no cross-sample normalisation employed when deriving FPKM expression units.

ADD REPLYlink written 7 months ago by Kevin Blighe200
Answer: Conversion from counts to FPKM
gravatar for Ahmed Alhendi
7 months ago by
University of Leicester, UK
Ahmed Alhendi0 wrote:

Try countToFPKM package. This package provides an easy to use function to convert the read count matrix into FPKM matrix. Implements the following equation:

enter image description here

The fpkm() function requires three inputs to return FPKM as numeric matrix normalized by library size and feature length:

  • counts A numeric matrix of raw feature counts.
  • featureLength A numeric vector with feature lengths that can be obtained using
  • meanFragmentLength A numeric vector with mean fragment lengths,
    which can be calculate with
    Picard using CollectInsertSizeMetrics.

Also see

ADD COMMENTlink modified 6 months ago • written 7 months ago by Ahmed Alhendi0

Hi! I have small RNA data with raw counts and i want to correlate it with long RNA data with FPKM values. My question is is this countTOPFKM package is suitable for small RNA data?

ADD REPLYlink written 6 months ago by arpanamv830
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 254 users visited in the last hour