SCENIC(Single-Cell rEgulatory Network Inference and Clustering)是一个基于共表达和motif分析,用于计算单细胞转录组数据基因调控网络重建及细胞状态鉴定的方法,可以简单理解为单细胞转录因子分析。
官方教程https://github.com/aertslab/SCENIC
这里使用python版本的pyscenic和R可视化相结合的方法,利用单细胞注释完整的Seurat对象,得到不同组别和不同细胞类型中高表达的转录因子热图。
注意:1、SCENIC数据库支持的物种包括人类、小鼠和果蝇,如果研究其他物种需要手动构建RcisTarget databases
2、SCENIC对电脑要求较大、耗时长,最好在服务器中运行。如我们常见的PBMC数据库的1w个细胞在服务器中运行需要占用CPU约两个小时、消耗60G左右的内存。
再在linux环境写一个python脚本(csv2loom.py),将csv转换为loom文件
import os, sys
os.getcwd()
os.listdir(os.getcwd())
import loompy as lp;
import numpy as np;
import scanpy as sc;
x=sc.read_csv("count.csv");
row_attrs = {"Gene": np.array(x.var_names),};
col_attrs = {"CellID": np.array(x.obs_names)};
lp.create("sample.loom",x.X.transpose(),row_attrs,col_attrs)
如果提前配置好了pyscenic环境
conda activate pyscenic
python csv2loom.py
运行pyscenic之前需要在linux提前下载好三个文件(这里针对人类样本)
1、hs_hgnc_tfs.txt(转录组因子列表)
https://github.com/aertslab/pySCENIC/blob/master/resources/hs_hgnc_tfs.txt
2、hg19-tss-centered-10kb-7species.mc9nr.feather(reference数据库)
https://resources.aertslab.org/cistarget/databases/homo_sapiens/hg19/refseq_r45/mc9nr/gene_based/hg19-tss-centered-10kb-7species.mc9nr.feather
3、motifs-v9-nr.hgnc-m0.001-o0.0.tbl(TF注释)
https://resources.aertslab.org/cistarget/motif2tf/motifs-v9-nr.hgnc-m0.001-o0.0.tbl
接下来就可以正式开始pyscenic啦
#图片来源:《Single-cell RNA sequencing highlights the role of inflammatory cancer-associated fibroblasts in bladder urothelial carcinoma》
上游处理就是这样啦,下一篇推送里我们将介绍R的可视化内容,大家感兴趣的欢迎期待一下~