Is it ever ok to use Seurat for clustering bulk samples?

I am looking at FPKM data from ~750 bulk RNA-seq samples generated using Cufflinks. As suggested for FPKM data, I manually input log transformed data to the @data slot [cd138_bm@data <- log(cd138_bm@raw.data + 1)] and skip the NormalizeData() function. I then use functions FindVariableGenes, ScaleData, RunPCA, FindClusters, RunTSNE, FindAllMarkers in their usual ways to find clusters & cluster markers. My clustering results are quite reasonable, and reflect published work clustering similar samples.

What are the potential pitfalls of using these Seurat functions on bulk data? In FindAllMarkers, would you recommend I use the "negbinom" test? (currently using wilcox) Any other arguments you would recommend changing from the default?

  • 1
    $\begingroup$ Good question. I removed scrnaseq tag since you have bulk rna sequencing, if I misunderstood somehting, feel free to edit it back. $\endgroup$ – Kamil S Jaron Oct 5 '18 at 8:47
  • $\begingroup$ I also want to try this bulk analysis with seurat and I am interested in your methods. Did you publish this analysis already ? If it's fine, I would like to ask you get the papers you wrote ! $\endgroup$ – ASE Sep 26 '19 at 3:28
  • $\begingroup$ I didn't publish, but I did use seurat on bulk and it worked great. $\endgroup$ – R-Peys Sep 27 '19 at 4:11

I'm not sure Seurat is the best tool for this as it was developed for single cell RNA seq data and there are a few intricacies of that type of data that are very different from bulk RNA seq. For bulk there are really good packages available and corresponding workflows, e.g. limma, edgeR and DESeq2.

The main problems with Seurat for bulk RNA-seq:

  1. Seurat expects counts as input - FPKM are not counts nor are they log counts or log norm counts. It's a specific normalisation method that takes into account gene length and library size and breaks the link between gene counts and variance.
  2. Because of the distribution of reads from a single cell that you get from the sequencer Seurat scales all unique reads (i.e. UMIs) to 10,000 per cell and usually regresses out the nUMI count. Again, becuase you've got FPKMs this makes no sense.
  3. The other functions you can use on bulk data, i.e. tSNE, finding clusters and markers (which is essentially DGE analysis). The one thing to note for the latter is that again because you've got FPKMs they don't follow the negative binomial distribution. Your best bet is limma trend but I'm not sure it's included in Seurat.
| improve this answer | |
  • $\begingroup$ You don't need to use Seurat's normalization. You can provide normalized counts or FPKMs and skip the normalization step. See this earlier discussion: bioinformatics.stackexchange.com/questions/5115/… $\endgroup$ – burger Oct 12 '18 at 18:51
  • $\begingroup$ That's true but if you look at the original post, OP uses ScaleData, which scales already scaled FPKM values. Even though feeding bulk RNA seq FPKM values to a Seurat@data slot is essentially doable, you are still relying on the downstream processing steps that were designed for log-normalised count data to be meaningful for FPKM values and it's certainly not the case for the FindAllMarkers function. $\endgroup$ – biomiha Oct 13 '18 at 8:49
  • $\begingroup$ There are a few issues on the Seurat GitHub that discuss importing TPM/FPKM values. The suggestions are always to just skip normalization and proceed normally. I haven't seen any concerns raised about FindAllMarkers. I don't mean to imply those concerns are not legitimate, but it's interesting they are not raised. $\endgroup$ – burger Oct 13 '18 at 20:35

FYI - heard from the author of Seurat, see this github issue

His suggestion to use DESeq won't work in my case, because DESeq requires counts data which I don't have. But it is the green light to generally use the package on bulk data. I am using test.use = "wilcox" in FindMarkers() because it's non-parametric...

| improve this answer | |
  • $\begingroup$ I would actually suggest limma-trend (not voom). Compared to a wilcox you'll gain a bit of statistical power due to the empirical bayes moderated t-test. $\endgroup$ – biomiha Oct 31 '18 at 18:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.