今天继续交流下STAGATE的细胞类型识别网络(Cell type-aware spatial network)和数据分析、作图部分。
1 Cell type-aware spatial network
由于torch版本目前还没有细胞级别的SNN,此部分内容将放上tensorflow版本的来代码。细胞识别空间网络与上一部分的近邻网络类似,都是构建了空间网络,即上距离小于一定距离(或者是前距离最相近的几个)的spot,认为是有连接,邻接矩阵为1,其余为0。不同的是细胞识别网络在这基础上还会先对基因表达数据进行聚类,如果两个spot基因表达聚类为同一类并且距离小于一定阈值,则认为有连接,否则无连接。再通俗点说,就是在上一篇近邻网络中再删除几条边。
下面还是上代码,首先对基因表达数据进行了PCA降维,然后又用louvain进行了聚类。
sc.tl.pca(adata, svd_solver='arpack')
sc.pp.neighbors(adata)
sc.tl.louvain(adata, resolution=pre_resolution, key_added='expression_louvain_label')
pre_labels = 'expression_louvain_label'
然后就是取交集。Graph_df是上一篇文章说的,每一对符合距离要求的spot和距离,一共三列spot1、spot2和距离,label则为