<p>Not sure if this has anything to do with your question but I think the way how Monocle approach this question sort of makes sense to me. The normalization methods for Seurat and Monocle are somehow similar (correct if I am wrong, this is simply my personal experience), as @kohlkopf mentioned. </p>

<p>For monocle specifically, it has this function where you can display dispersion v.s. expression of the genes to decide the cut off. Here is an example of this plot that I generated when processing the PBMC data downloaded from the Seurat tutorial.<a href="https://i.sstatic.net/tuT7e.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/tuT7e.png" alt="enter image description here"></a></p>

<p>You can assign the cut-off manually but I doubt I answered your question on how to decide the cut-off value. Maybe you need to try a set the expression cut-off from a range to experiment what value may potentially answer a biologically relevant question in your context.</p>

<p>If you are interested in how monocle approach this, I think the <a href="http://cole-trapnell-lab.github.io/monocle-release/docs/#classifying-and-counting-cells" rel="nofollow noreferrer">Monocle introduction</a> and <a href="https://davetang.org/muse/2017/10/01/getting-started-monocle/" rel="nofollow noreferrer">Dave Tang's Blog</a> are excellent in explain how it works. </p>

<p>Again, you are right that 0 could be sequencing error. But I would also suggest that, if you are looking at genes at very small expression level, scRNA-seq, at least droplet-based technique, could be really difficult in such context. I happened to hear someone trying to find lncRNA expression talking about how a "0" sometimes may be a true "0" due the low expression nature of lncRNA in scRNA-seq, etc.   </p>

<p>Anyhow, not sure if I answer the question but I do hope it helps you somehow. I am not able to make comments but this is the best I can do.</p>

CC BY-SA 4.0
2018-10-26T06:25:16.290Z
2018-10-26T06:25:16.290Z
BC Wang
<p>Much of the Seurat workflow incorporates normalized, scaled, and mean-centered expression values.</p>

<p>Raw gene expression counts for a cell are normalized by total expression, multiplied by 10,000, and log transformed. Expression level for each gene is scaled by dividing the centered gene expression levels by their standard deviations, resulting in z-scores. It's not an ideal solution, but I find a threshold of 1 (in the realm of z-scores) to make sense. A z-score of 1 is one standard deviation from the mean, or what may be interpreted as baseline expression.</p>

<p>This is my 2¢. I would love to hear what other people are doing.</p>

CC BY-SA 4.0
2018-10-24T15:42:19.490Z
2018-10-24T15:42:19.490Z
Kohl Kinning
<p>I want to find a cutoff value for each gene, above which we can consider a gene expressed.</p>

<p>The problem is that not all <em>effectively</em> non-expressed genes will have 0 counts due to sequencing errors for example.</p>

<p>My question is related to <a href="https://bioinformatics.stackexchange.com/questions/687/what-methods-are-available-to-find-a-cutoff-value-for-non-expressed-genes-in-rna">this one</a>, but is concerned with single-cell data. The technical differences between bulk and single cell RNA-seq warrant a separate question for this problem. Also similar to <a href="https://bioinformatics.stackexchange.com/questions/693/how-can-we-distinguish-between-true-zero-and-dropout-zero-counts-in-single-cell">this one</a>, but focuses on gene expression and not differences between zero counts.</p>

CC BY-SA 4.0
2018-09-17T15:01:25.427Z
This cutoff would be applied to non-transformed values or to raw counts? What kind of counts do you have: at the transcript or at the gene level?
llrs
CC BY-SA 4.0
2018-09-17T15:26:51.300Z
You have to be careful when setting these kinds of thresholds in single cell experiments. Using a mean or variance = cutoff may cause you to remove genes that define a rare subset of cells. For example, the genes derived from a subset of cells that represent 2% of your total population may have a low mean expression.
GWW
CC BY-SA 4.0
2018-09-18T13:19:38.093Z
@Llopis I don't mind either way. The idea is to assign expressed / non expressed status to each gene (with some confidence). I have counts at the gene level.
Peter
CC BY-SA 4.0
2018-09-18T13:24:14.363Z
@GWW Thanks for the comment. Yes I agree a simple approach won't do. Maybe for each gene we can look at the distribution of expression and choose the first minimum, or take a subset (cluster of similar cells, cell type) of cells and work with their mean / variance.
Peter
<rna-seq><scrnaseq><gene-expression>
Find a cutoff value for genes that are expressed in single cell RNA-seq?
# Find a cutoff value for genes that are expressed in single cell RNA-seq?

(Asked by: username_0 on 2018-09-17)

I want to find a cutoff value for each gene, above which we can consider a gene expressed.

The problem is that not all *effectively* non-expressed genes will have 0 counts due to sequencing errors for example.

My question is related to [this one](https://bioinformatics.stackexchange.com/questions/687/what-methods-are-available-to-find-a-cutoff-value-for-non-expressed-genes-in-rna), but is concerned with single-cell data. The technical differences between bulk and single cell RNA-seq warrant a separate question for this problem. Also similar to [this one](https://bioinformatics.stackexchange.com/questions/693/how-can-we-distinguish-between-true-zero-and-dropout-zero-counts-in-single-cell), but focuses on gene expression and not differences between zero counts.

**Tags:** rna-seq, scrnaseq, gene-expression
> **Comments:**
> **username_1**: This cutoff would be applied to non-transformed values or to raw counts? What kind of counts do you have: at the transcript or at the gene level?  
> **username_2**: You have to be careful when setting these kinds of thresholds in single cell experiments. Using a mean or variance = cutoff may cause you to remove genes that define a rare subset of cells. For example, the genes derived from a subset of cells that represent 2% of your total population may have a low mean expression.  
> **username_0**: @Llopis I don't mind either way. The idea is to assign expressed / non expressed status to each gene (with some confidence). I have counts at the gene level.  
> **username_0**: @GWW Thanks for the comment. Yes I agree a simple approach won't do. Maybe for each gene we can look at the distribution of expression and choose the first minimum, or take a subset (cluster of similar cells, cell type) of cells and work with their mean / variance.  

---

## 2 answers

### Answer by username_3 on 2018-10-26. Score: 1

Not sure if this has anything to do with your question but I think the way how Monocle approach this question sort of makes sense to me. The normalization methods for Seurat and Monocle are somehow similar (correct if I am wrong, this is simply my personal experience), as @kohlkopf mentioned.

For monocle specifically, it has this function where you can display dispersion v.s. expression of the genes to decide the cut off. Here is an example of this plot that I generated when processing the PBMC data downloaded from the Seurat tutorial.[![enter image description here](https://i.sstatic.net/tuT7e.png)](https://i.sstatic.net/tuT7e.png)

You can assign the cut-off manually but I doubt I answered your question on how to decide the cut-off value. Maybe you need to try a set the expression cut-off from a range to experiment what value may potentially answer a biologically relevant question in your context.

If you are interested in how monocle approach this, I think the [Monocle introduction](http://cole-trapnell-lab.github.io/monocle-release/docs/#classifying-and-counting-cells) and [Dave Tang's Blog](https://davetang.org/muse/2017/10/01/getting-started-monocle/) are excellent in explain how it works.

Again, you are right that 0 could be sequencing error. But I would also suggest that, if you are looking at genes at very small expression level, scRNA-seq, at least droplet-based technique, could be really difficult in such context. I happened to hear someone trying to find lncRNA expression talking about how a "0" sometimes may be a true "0" due the low expression nature of lncRNA in scRNA-seq, etc.

Anyhow, not sure if I answer the question but I do hope it helps you somehow. I am not able to make comments but this is the best I can do.


---

### Answer by username_4 on 2018-10-24. Score: 0

Much of the Seurat workflow incorporates normalized, scaled, and mean-centered expression values.

Raw gene expression counts for a cell are normalized by total expression, multiplied by 10,000, and log transformed. Expression level for each gene is scaled by dividing the centered gene expression levels by their standard deviations, resulting in z-scores. It's not an ideal solution, but I find a threshold of 1 (in the realm of z-scores) to make sense. A z-score of 1 is one standard deviation from the mean, or what may be interpreted as baseline expression.

This is my 2¢. I would love to hear what other people are doing.


---

