Thanks for your answer. Just to clarify, in the example that I wrote, we would keep genes A, B and C, and genes that have log2fold change less than -2.0, right?
So here is a dumb question for someone like me who forgot her high school math. I've seen in papers that they cut by two fold a log2 fold change in RNA-seq data. So let's say that I have 5 up regulated genes like in the table above, if I cut by two fold, does it mean that I only keep log2 fold changes that are higher than 2?
Gene log2fold
A 5.00
B 4.00
C 3.00
D 1.55
E 1.00
1 answer
We generally use a two-fold cut-off on Fold Changes (FC) itself rather than log2(FC). Two-fold cut-off means anything that has a value greater than or equal to +2.0 and less than or equal to -2.0. This is because we need to find genes that are upregulated (positive FC) as well as downregulated (negative FC). Lets call the data that you have shown as dat. If you want to use this cut-off on this data, you would do something like this in R:
dat.log2FC.twofold = dat[abs(dat$log2fold) >= 2.0,]
This will give you log2 fold changes values greater than or equal to +2.0 and less than or equal to -2.0. It is just a matter of taking an absolute of your value and applying the cut-off on it, rather than simply applying the cut-off.
Log in to answer this question.
Just as a side comment, ranking genes and setting a cut-off on logFC tends to include mostly genes expressed at low levels. This is because statistically and maybe also biologically, low expressed genes tend to have larger differences.
Conversely, ranking and filtering by FDR tends to favour genes expressed at high levels.
A workaround this is to select genes that are towards the perifery of the cloud of the MAplot (i.e. plot of expression vs logFC). I wrote a little R script to do this (intensityFilter.R).