In the previous parts of our series on single-cell RNA sequencing (scRNA-seq) quality control (QC), we discussed detecting low UMI cells and empty droplets. In this third part, we will focus on detecting doublets. Doublets occur when two or more cells are captured in the same droplet, leading to mixed gene expression profiles that can confound downstream analyses. We’ll use the πππππππ²πππππΊ toolkit to illustrate how to detect and manage doublets in scRNA-seq data.
What Are Doublets?
Doublets arise when multiple cells are encapsulated in the same droplet (see our last article for more info on droplets) during droplet-based scRNA-seq. These events can result in hybrid gene expression profiles that do not represent any single cell, leading to potential misinterpretations in analyses such as cell type identification or trajectory inference.
Why Detect Doublets?
Identifying and filtering doublets is crucial because they can significantly impact the accuracy of your data analysis. Doublets can falsely appear as rare cell types or lead to incorrect clustering and differential expression results.
Step-by-Step Guide to Detecting Doublets with πππππππ²πππππΊ
πππππππ²πππππΊ provides a method called ππππ³πππππππ΅πππππ() to identify potential doublets in your scRNA-seq data, and another, more general QC function – ππππ²πππππ²() – which allows to specify multiple different algorithms at the same time. Hereβs how to use it:
Step 1: Load the Data
First, load your scRNA-seq data into R. πππππππ²πππππΊ supports various data formats, including πππππππ²ππππ΄π‘ππππππππ objects and ππππππ objects.
Step 2: Run Doublet Detection
Use the πππππππ²πππππΊ::ππππ²πππππ²() function to identify potential doublets. This function allows to specify QC algorithms, including a machine learning approach to detect doublets based on gene expression profiles. We choose πππ³πππ΅πππππ (Germain et al. 2012) and ππππππππ΅πππππ (McGinnis et al. 2019) in our example.
Step 3: Examine the Results
The ππππ²πππππ²() function has added columns to the cell metadata, including an indication of the doublet scores and a binary classification of whether a cell is a doublet.
We can visualise how many doublets are identified per method:
Step 4: Filter Out Doublets
For ππππππππ΅πππππ(), we can set a threshold for the doublet score to filter out potential doublets. This threshold can be adjusted based on the distribution of scores in your dataset.
Practical Example
Letβs apply this to the pbmc3k dataset, which contains peripheral blood mononuclear cells (PBMCs). We use the simplified function ππππ³πππππππ΅πππππ(), to only identify doublets with one method.
In this example, cells with doublet scores above 0.25 are identified as doublets and removed, ensuring that only high-quality single-cell data is used in further analyses.
Conclusion
Detecting and filtering doublets is a critical step in scRNA-seq quality control. By using πππππππ²πππππΊ, researchers can effectively identify doublets, reducing noise and improving the accuracy of their analyses. In the next part of this series, we will explore methods to detect ambient RNA, another common source of contamination in scRNA-seq data. Stay tuned!
By following these steps, you can enhance the reliability of your scRNA-seq data and gain deeper insights into the biology of single cells.
References
Germain PL, Lun A, Meixide CG, Macnair W, Robinson MD. Doublet identification in single-cell sequencing data using scDblFinder. F1000Research. 2021;10.
Hong R, Koga Y, Bandyadka S, Leshchyk A, Wang Y, Akavoor V, Cao X, Sarfraz I, Wang Z, Alabdullatif S, Jansen F. Comprehensive generation, visualization, and reporting of quality control metrics for single-cell RNA sequencing data. Nature communications. 2022 Mar 30;13(1):1688.
McGinnis CS, Murrow LM, Gartner ZJ. DoubletFinder: doublet detection in single-cell RNA sequencing data using artificial nearest neighbors. Cell systems. 2019 Apr 24;8(4):329-37.