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:
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?
How do I make sure that the genes in my GRanges object containing the gene lengths match the genes in the dss object?
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).
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.
Try countToFPKM package. This package provides an easy to use function to convert the read count matrix into FPKM matrix. Implements the following equation:
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 biomaRt.
meanFragmentLength A numeric vector with mean fragment lengths,
which can be calculate with Picard
using CollectInsertSizeMetrics.
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?
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.