title: "README.md" author: "YihanXiao" date: "8/2/2021"
STREAM is a protocol for processing spatial transcriptomic data. Currently, it supports 10x-genomics. The flow could also take processed matrices or Seurat object from FISH-seq, STARmap, Slide-seq , Dbit-seq and seq-scope as input files. Processed matrices consist of count matrix and table with location information for each spots obtained from image processing. Besides,the meta file of cell-type annotations is optional.
STREAM is composed of for following parts: Initialization, Preprocessing, SE genes, Spatial Clustering, CCI and Integration with scRNA seq data. Preprocessing
part includes steps of initialization, visualization, QC, normalization, filter, dimension reduction, clustering based on expression only, marker-gene identification, etc. SE genes
part is for the genes with strong difference in spatial expression pattern, in which published methods including SpatialDE
, binspect
, silhouetteRank
, SPARK
are collected. Spatial clustering
part investigates sub-domains for tissue heterogeneity through HMRF
and Neighborhood-Kmeans method
. CCI
part aims to study the potential gene pair relation and cell-cell interaction in the space.
For the documentation, instruction and tutorials of STREAM, visit STREAM Website.
$ git clone https://github.com/YeehanXiao/STREAM.git
$ cd STREAM
$ conda env create -f enviroment.yml
$ conda activate STREAM
$ pip3 install NaiveDE
$ pip3 install spatialde
$ R -e 'devtools::install_github("xzhoulab/SPARK")'
$ R -e 'devtools::install_github("RubD/Giotto", force = TRUE)'
$ R -e 'devtools::install(".")'
Initialize
instrs <- Giotto::createGiottoInstructions(show_plot = FALSE,save_plot = FALSE, save_dir = "./",python_path = "/usr/local/bin/python3")
object <- Giotto::createGiottoObject(raw_exprs = data[["Spatial"]]@counts, spatial_locs = data@meta.data[, c("x", "y")], instructions = instrs)
Preprocess
object <- processing(object = Giotto_obj)
Identify SE genes
diffgene <- DiffGenes(object = object, numCores = 10)
Explore spatial clustering pattern
object <- KmeansCluster(object = object)
object <- HmrfCluster(object = object, outputFolder = "/Users/xiaoyihan", spatialGenes = diffgene$binspectGenes[1:200, ]$genes)
Study cell-cell interaction
ggi <- GGI(object = object, numCores = 10)
interaction=SpatCellphoneDB(testob, num.cores = 16,cellphonedbPath = "/Users/xiaoyihan/miniconda3/bin/cellphonedb")
Visualization
QCplot(object=object)
SEplot(diffgene,Species = "mouse")
DomainPlot(object=object)
scHOTplot(cci)
cellphoneDBplot(interaction = interaction, outputFolder = "liver_results",save.plot = TRUE)
Valentine et al. SpatialDE: identification of spatially variable genes. Nature Methods. 2019 Mar 19.
...
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.