SCENT is an R package for estimating differentiation potency of single cells from scRNA-Seq data using signaling entropy on protein-protein interaction (PPI) networks. The package implements the computational framework described in Teschendorff & Enver (2017), with performance optimizations through C++ (Rcpp/RcppArmadillo).
๐ Documentation: https://zaoqu-liu.github.io/SCENT/
The differentiation potency of a cell can be quantified by the signaling entropy rate, which measures the "randomness" of information flow through the protein interaction network. The mathematical formulation is:
$$SR = \frac{1}{SR_{max}} \sum_{j} \pi_j S_j$$
where:
| Cell State | SR Value | Network Signaling |
|---|---|---|
| Pluripotent (stem-like) | High | Uniform flow through multiple pathways |
| Differentiated | Low | Concentrated flow through specific pathways |
install.packages("SCENT", repos = c(
"https://zaoqu-liu.r-universe.dev",
"https://cloud.r-project.org"
))
# Install dependencies
install.packages(c("Rcpp", "RcppArmadillo", "Matrix", "igraph"))
# Install SCENT
devtools::install_github("Zaoqu-Liu/SCENT")
| Platform | Requirement |
|---|---|
| macOS | xcode-select --install |
| Windows | Rtools |
| Linux | Standard build tools (gcc, g++) |
library(SCENT)
# Load built-in PPI network (8,434 genes, 303,600 interactions)
data(net13Jun12.m)
# Load your expression matrix (genes ร cells)
# For Seurat objects: exp <- GetAssayData(seurat_obj, layer = "data")
# Method 1: CCAT (fast approximation)
ccat_scores <- CompCCAT(exp, net13Jun12.m)
# Method 2: SR (full computation)
integ <- DoIntegPPI(exp, net13Jun12.m)
sr_result <- CompSRana(integ, local = TRUE)
# Access results
sr_scores <- sr_result$SR # Global entropy rate per cell
local_entropy <- sr_result$locS # Gene-level local entropy
stationary <- sr_result$inv # Stationary distribution
| Method | Algorithm | Speed | Accuracy | Use Case |
|---|---|---|---|---|
| SR | Full entropy computation | ~5s / 100 cells | Gold standard | Publication, validation |
| CCAT | Correlation with degree | ~0.1s / 100 cells | Approximation (r โ 0.78) | Screening, large datasets |
| Tutorial | Description |
|---|---|
| Quick Start | Basic usage and workflow |
| Algorithm | Mathematical background and derivation |
| Visualization | Publication-quality figures |
| Benchmark | Performance analysis |
If you use SCENT in your research, please cite:
Teschendorff AE, Enver T. Single-cell entropy for accurate estimation of differentiation potency from a cell's transcriptome. Nature Communications. 2017;8:15599. doi:10.1038/ncomms15599
@article{teschendorff2017single,
title={Single-cell entropy for accurate estimation of differentiation
potency from a cell's transcriptome},
author={Teschendorff, Andrew E and Enver, Tariq},
journal={Nature Communications},
volume={8},
pages={15599},
year={2017},
doi={10.1038/ncomms15599}
}