Hello and thank you in advance for your help.
I am doing a single cell RNA seq experiment and analyzing data with Seurat. I have four treatment groups, which I integrated, then identified clusters of different types of cells in the brain. Everything looked exactly right at this point. Then I wanted to test for DEGs within each cluster. Using the standard Seurat workflow of switching default assay to "RNA" and then using FindMarkers(), I get kind of strange results. Here is a sample volcano plot from one cluster:
If I switch to a statistical method in FindMarkers (like negbinom) that uses RNA counts instead of scaled data, things look much more as I would expect. Here is the same cluster, tested using counts as data.
I have triple checked that I am performing the Seurat workflow as per the tutorial here: https://satijalab.org/seurat/v3.1/immune_alignment.html
It just seems so odd to me that when I do DEG testing the apparently correct way, I get huge LogFC's and also a weird looking volcano plot with many many significant (padj < .05) DEGs with logFC close to zero.
Has anyone encountered a similar issue? Any help would be great. Thank you!
FindMarkers does not use scaled data. For most test, such as "wilcox", the default slot is "data", which is normalized counts. Using "counts" (raw counts) does not make sense in that case.
Sorry Igor, you are of course correct that the "data" slot is log normalized, and NOT scaled.
But when I do it the correct way, using the normalized data slot, things look wrong. When I use counts, which is only recommended for tests like negbinom or DESeq2, the results look much more correct, irrespective of the statistical test that I use.
I was mostly wondering if people had encountered similar results - I haven't seen people do many volcano plots on single cell data.
You posted 4 commands and 2 plots. I am not sure which command corresponds to the first plot, but the logFCs are above 20. Something seems wrong there regardless of the test used. The test should only define the p-value.
You really ought to spell out the two different findMarkers commands
Right you are! Commands that will give data producing the first plot:
Commands that will give the second plot:
How could you make the volcano plot? In the Seurat integration tutorial, there no method to draw this.
Please do not add answers unless you're answering the top level question. Use
Add Comment
orAdd Reply
as appropriate. I've moved your post to a comment this time.