STAOmics is designed for diagonal integration of unpaired spatial multi-omics data.
a. STAOmics adopts a two-stages training strategy. In stage 1, pretraining graph attention network to produce coarse aligned embeddings. In stage 2, identifying anchors via Fused Gromov-Wasserstein optimal transport and performing anchor guided alignment. b. STAOmics can be applied to integrate unpaired spatial slices with distinct omics feature space (including DNA, CUT&Tag, ATAC, RNA, and Protein) (I) and artificially generate paired multi-omics data from profiled single-omics slices and inference of gene regulation network (II).
The STAOmics package is developed based on the Python libraries bedtools, Scanpy, PyTorch and PyG (PyTorch Geometric) framework, and can be run on GPU (recommend) or CPU.
It's recommended to create a separate conda environment for running STAOmics:
#create an environment called env_STAOmics
conda create -n env_STAOmics python=3.8
#activate your environment
conda activate env_STAOmics
Please ensure the required packages: POT, bedtools, Scanpy, PyTorch and PyG have been installed in advance.
-
For bedtools, make sure the version is not lower than v2.29.2. You can install it as follows:
conda install -c bioconda bedtools==2.30.0
-
You need to choose the appropriate dependency PyTorch and PyG for your own CUDA environment, and we successfully run STAOmics under the following pytorch==1.13.1+cu116 and torch-geometric==2.3.0 with CUDA Version: 11.6. You can install it as follows:
pip install torch_geometric pip install "https://download.pytorch.org/whl/cu116/torch-1.13.1%2Bcu116-cp38-cp38-linux_x86_64.whl"
-
Other packages can be found in requirement.txt:
pip install -r requiement.txt
Finally, you can install STAOmics as follows:
git clone https://github.com/zhoux85/STAOmics.git
cd STAOmics-main
python setup.py build
python setup.py install
Step-by-step tutorials are included in the Tutorial
folder to show how to use STAOmics.
- Tutorial 1: Two-omics integration on P22 mouse brain slices (RNA and H3K27ac)
- Tutorial 2: Five-omics integration on P22 mouse brain slices (RNA, ATAC, H3K27ac, H3K27me3, and H3K4me3)
- Tutorial 3: Integration of mouse embryo brain slices across different developmental stages
- Tutorial 4: Integration of slide-DNA-seq and slide-RNA-seq mouse liver metastasis slices
- Tutorial 5: Integration of spatial transcriptomics and proteomics human lymph node slices
The GTF file used for prior feature graph construction can be downloaded from GENCODE: ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M25/gencode.vM25.chr_patch_hapl_scaff.annotation.gtf.gz or here.
If you have any questions, please feel free to contact us [email protected] or [email protected].
This model borrows code for model training from scGLUE and STAGATE. We thank the respective authors for making their code available to the community.