Working with slide-seq data

[1]:
import stlearn as st
import warnings
warnings.filterwarnings('ignore')

The data is downloaded from https://www.spatialomics.org/SpatialDB/download.php

Technique

PMID

Title

Expression

SV genes

Slide-seq

30923225

Slide-seq: a scalable technology for measuring genome-wide expression at high spatial resolution

slideseq_30923225.tar.gz

slideseq_30923225_SVG.tar.gz

Read Slide-seq data

[2]:
data = st.ReadSlideSeq(count_matrix_file="SlideSeq/slideseq_30923225/Puck_180413_7.count",
               spatial_file="SlideSeq/slideseq_30923225/Puck_180413_7.idx")
[3]:
data
[3]:
AnnData object with n_obs × n_vars = 12282 × 3235
    obs: 'index', 'imagecol', 'imagerow'
    var: 'ENSEMBL'
    uns: 'spatial'
    obsm: 'spatial'

Plot for QC

[4]:
st.pl.QC_plot(data)
../_images/tutorials_Read_slideseq_6_0.png

Preprocessing data

[5]:
st.pp.filter_genes(data,min_cells=3)
st.pp.normalize_total(data)
st.pp.log1p(data)
st.pp.scale(data)
Normalization step is finished in adata.X
Log transformation step is finished in adata.X
Scale step is finished in adata.X

Run PCA

[6]:
st.em.run_pca(data,n_comps=50,random_state=0)
PCA is done! Generated in adata.obsm['X_pca'], adata.uns['pca'] and adata.varm['PCs']

Run and plot louvain clustering

[7]:
st.pp.neighbors(data,n_neighbors=25,use_rep='X_pca',random_state=0)
Created k-Nearest-Neighbor graph in adata.uns['neighbors']
[8]:
st.tl.clustering.louvain(data,random_state=0)
Applying Louvain clustering ...
Louvain clustering is done! The labels are stored in adata.obs['louvain']
[9]:
st.pl.cluster_plot(data,use_label="louvain",tissue_alpha=1,spot_size=1,show_legend=True)
../_images/tutorials_Read_slideseq_14_0.png