Defining Cell Type Inter-Sample Consistency Metrics
1 Defining ISC Metrics and Evaluation Criteria
This tutorial summarizes the manuscript rationale for how inter-sample consistency (ISC) is defined and evaluated in scTypeEval.
We designed a panel of ISC metrics adapted from commonly used cluster validation approaches:
- average silhouette width-based metrics:
silhouetteand2label_silhouette - graph-based neighborhood purity
- clustering agreement
- nearest-medoid agreement
These families are commonly used to quantify compactness and separability at the single-cell level within one dataset. In ISC, they are adapted to explicitly account for variation across samples or datasets (see Methods in the manuscript).
ISC does not score cell types directly from raw expression. It first evaluates cross-sample relationships in a dissimilarity space, then computes consistency metrics on top of that space.
2 Input to ISC Metrics: Cell Type Dissimilarity Matrices
All ISC metrics take as input a cell-type by cell-type dissimilarity matrix. In these matrices, expression-defined cell type profiles are compared across samples.
Conceptually, the pipeline is:
- define cell type labels per sample
- compute cross-sample cell type dissimilarities
- apply ISC metrics on the resulting matrix
3 Two Ways to Build Dissimilarity Matrices
3.1 1. Single-cell distribution-based dissimilarity
This approach compares distributions of single cells across samples, for example with:
WasserStein
3.2 2. Pseudobulk or classifier-based dissimilarity
This approach compares aggregated profiles or reciprocal prediction behavior across samples, including:
Pseudobulk:EuclideanPseudobulk:CosinePseudobulk:Pearson- reciprocal-classification dissimilarities (
recip_classif:Match,recip_classif:Score)
4 Reciprocal Classification Dissimilarity
For reciprocal classification, each pair of samples is evaluated bidirectionally:
- train classifier from sample A and predict in sample B
- train classifier from sample B and predict in sample A
- combine reciprocal predictions into dissimilarities
The reciprocal outcomes can be encoded as:
- binary match-based dissimilarity (
recip_classif:Match) - score-based dissimilarity (
recip_classif:Score)
