SherlockCell is a nextflow pipeline for identifying malignant cells from single-cell RNA sequencing (scRNA-seq) data based on copy number variation (CNV) profiles and tumor heterogeneity features. It is built on SwiftCNV, a fast and scalable Python implementation of the original InferCNV algorithm extended with additional features.
The pipeline comprises 3 different modules:
- An automatic malignant cell classification using the SCF classifier to define reference and query cells for SwitfCNV.
- CNV detection with SwiftCNV.
- Malignant classification step.
A detailed explanation of the malignant classification pipeline can be found in the project wiki.
The input parameters for SherlockCell are passed throught a samplesheet.tsv file containing these fields:
| dataset | adata_path | outdir | cell_origin | cell_type_key | sample_key | sample_type_key |
|---|---|---|---|---|---|---|
| datase_name | /path/to/adata.h5ad | /path/to/outdir | T-cells, Macrophages | cell_type | sample | sample_type |
SherlockCell creates several reports for each classification step. An overview of all output files is shown in the figure below.
The image UMAP_malignant_classif shows the result of the malignant classification in the UMAP emmbedding.
Additionally, a figure showing the distributions of the three malignancy scores and the classification thresholds used for each sample is provided along with other plots in the reannot_metrics_plots.pdf file.



