steam
Evaluating consistency and reliability of clustering in spatial omics using STEAM
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.5%) to scientific vocabulary
Repository
Evaluating consistency and reliability of clustering in spatial omics using STEAM
Basic Info
Statistics
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 5
Metadata Files
README.Rmd
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# STEAM
[](https://github.com/fanzhanglab/STEAM/actions/workflows/check-standard.yaml)
[](https://opensource.org/licenses/MIT)

One common challenge in evaluating the robustness of identified cell type clusters in spatial omics is the lack of ground truth cell type labels in real-world data from disease conditions. To address this, we introduce STEAM, a Spatial Transcriptomics Evaluation Algorithm and Metric for clustering performance, developed to evaluate the consistency of clustering algorithms and the reliability of cell annotations in spatial omics data. Our hypothesis is that if clusters are robust and consistent across tissue regions, selecting a subset of cells or spots within a cluster should enable accurate prediction of cell type annotations for the remaining cells within that cluster, due to spatial proximity and gene expression covarying patterns.
STEAM incorporates various machine learning models, including Random Forest, XGBoost, and SVM, to assess the prediction accuracy and consistency of clusters, along with statistical metrics like Kappa score, F1 score, ARI (Adjusted Rand Index), etc. We demonstrated the capability of STEAM on multi-cell and single-cell resolution spatial transcriptomics and proteomics. Notably, STEAM supports multi-sample training, enabling the evaluation of cross-replicate clustering consistency. Furthermore, we used STEAM to evaluate the performance of spatial-aware and spatial-ignorant clustering methods, offering researchers a valuable tool for more informed result interpretation.
## Installation
You can install the STEAM Package from
[GitHub](https://github.com/fanzhanglab/STEAM/) using the devtools as
follows:
``` r
# install.packages("devtools")
devtools::install_github("fanzhanglab/STEAM")
```
(OR)
``` r
remotes::install_github("fanzhanglab/STEAM")
```
### Dependencies / Other required packages
``` r
- R (\>= 4.2)
- ggplot2 (\>= 3.4.2)
- caret
- randomForest
- e1071
- scales
- gridExtra
- grid
- reshape2
- viridis
```
## Tutorials
**Step-by-step notebook** of applying STEAM on 10X Visium Human Brain Data (DLPFC):
- Tutorial of applying STEAM on DLPFC data
#### Below are several major steps of running STEAM:
``` r
# Create a new STEAM object for the loaded spatial transcriptomic data
STEAM.Obj <- LoadSTEAM(count_exp = matrix, spatial = coordinates, labels = labels, Seurat.obj = NULL)
```
``` r
STEAM.Obj <- RunSTEAM(STEAM.obj, train.ratio = 0.8, n.size = 5, seed = 123, cv.folds = 10, cv.repeats = 3, trainval.ratio = 0.8, model = "rf", n.tree = 500, kernel = 'linear', train.folder.name = 'train.out', allowParallel = FALSE)
```
## Citations
Reynoso, S., Schiebout, C., Krishna, R., Zhang, F. STEAM: Spatial Transcriptomics Evaluation Algorithm and Metric for clustering performance, [*bioRxiv*](link), 2025
## Help, Suggestion and Contribution
Using github [**issues**](https://github.com/fanzhanglab/STEAM/issues)
section, if you have any question, comments, suggestions, or to report
coding related issues of STEAM is highly encouraged than sending
emails.
- Please **check the GitHub
[issues](https://github.com/fanzhanglab/STEAM/issues)** for similar
issues that has been reported and resolved. This helps the team to
focus on adding new features and working on cool projects instead of
resolving the same issues!
- **Examples** are required when filing a GitHub issue. In certain
cases, please share your STEAM object and related codes to understand
the issues.
## Contact
Please contact [fanzhanglab@gmail.com](fanzhanglab@gmail.com) for further questions or protential collaborative opportunities!
Owner
- Name: The Zhang Lab
- Login: fanzhanglab
- Kind: organization
- Email: fanzhanglab@gmail.com
- Website: https://fanzhanglab.org/
- Twitter: FanZhang_Jessie
- Repositories: 6
- Profile: https://github.com/fanzhanglab
The Computational Omics and Systems Immunology (COSI) lab
Citation (CITATION.cff)
cff-version: 1.0.3
message: "If you use this software, please cite it using the following reference."
authors:
- family-names: Reynoso
given-names: S.
- family-names: Schiebout
given-names: C.
- family-names: Krishna
given-names: R.
- family-names: Zhang
given-names: F.
title: "STEAM"
date-released: 2025
url: https://www.biorxiv.org/content/10.1101/2025.02.17.636505v1
journal: bioRxiv
doi: https://doi.org/10.1101/2025.02.17.636505
GitHub Events
Total
- Issues event: 5
- Watch event: 1
- Issue comment event: 2
- Public event: 1
- Push event: 23
- Create event: 1
Last Year
- Issues event: 5
- Watch event: 1
- Issue comment event: 2
- Public event: 1
- Push event: 23
- Create event: 1
Dependencies
- actions/checkout v3 composite
- actions/setup-node v2 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- R >= 4.0 depends
- caret * imports
- e1071 * imports
- ggplot2 * imports
- grDevices * imports
- grid * imports
- gridExtra * imports
- mclust * imports
- randomForest * imports
- reshape2 * imports
- scales * imports
- stats * imports
- utils * imports
- viridis * imports
- Seurat * suggests
- ggpointdensity * suggests
- knitr * suggests
- rmarkdown * suggests