Single Cell——转录因子调控网络分析(SCENIC)

转录因子调控网络

SCENIC (Single-Cell rEgulatory Network Inference and Clustering) 是从单细胞RNA数据推断基因调控网络及其相关细胞状态的工具。

原作者将SCENIC应用于肿瘤和小鼠大脑单细胞图谱数据,证明了顺式调控网络分析能够有助于深入挖掘细胞异质性背后的生物学意义,并为疾病的诊断、治疗以及发育分化的研究提供有价值的线索。

SCENIC在2017年首先发表于nature methods,2020年又将流程整理后发表于nature protocls。有R版和python版本。

SCENIC 工作流程

官方手册
vignetteFile <- file.path(system.file('doc', package='SCENIC'), "SCENIC_Running.Rmd")
file.copy(vignetteFile, "SCENIC_myRun.Rmd")
# or: 
vignetteFile <- "https://raw.githubusercontent.com/aertslab/SCENIC/master/vignettes/SCENIC_Running.Rmd"
download.file(vignetteFile, "SCENIC_myRun.Rmd")
构建基因调控网络(GRN):
  • 根据共表达确定每个 TF 的潜在靶基因:
    • 过滤表达式矩阵并运行 GENIE3/GRNBoosrt
    • 将GENIE3/GRNBoost中的目标格式化为共表达模块。
  • 基于DNA-motif分析选择潜在的直接结合靶标(调控子)(RcisTarget: TF motif analysis)
识别细胞状态及其调节因子:
  • 分析每个单独单元(AUCell)中的网络活动
    • 细胞中的评分规则(计算AUC)
    • 将网络活动转换为二进制活动矩阵
  • 基于基因调控网络活性(细胞聚类)鉴定稳定的细胞状态并探索结果

准备包和数据

装包

SCENIC的workflow主要依赖三个R包的支持:

  • GENIE3:用于共表达网络的计算(也可以用GRNBoost2替代)

  • RcisTarget:转录因子结合motif的计算

  • AUCell:识别单细胞测序数据中的激活基因集(gene-network)

    dir.create(“./SCENIC”) #构建SCENIC分析文件夹
    setwd(“SCENIC”)
    dir.create(“D:/R/seurat/SCENIC/cisTarget_databases”)#构建数据库文件夹
    setwd(“D:/R/seurat/SCENIC/cisTarget_databases”)

    #导入相关R包
    if(!require(SCENIC))
    BiocManager::install(c(“AUCell”, “RcisTarget”),ask = F,update = F);
    BiocManager::install(c(“GENIE3”),ask = F,update = F)#这三个包显然是必须安装的
    if(!require(SCopeLoomR))
    devtools::install_github(“aertslab/SCopeLoomR”, build_vignettes = TRUE)#SCopeLoomR用于获取测试数据

    if (!requireNamespace(“arrow”, quietly = TRUE))
    BiocManager::install(‘arrow’) qwqw

    if(!require(SCENIC))
    devtools::install_github(“aertslab/SCENIC”)

    if (!requireNamespace(“BiocManager”, quietly = TRUE))

    install.packages(“BiocManager”)

    options(“repos” = c(CRAN=“https://mirrors.tuna.tsinghua.edu.cn/CRAN/”))

    options(BioC_mirror=“https://mirrors.tuna.tsinghua.edu.cn/bioconductor”)

    install.packages(“feather”)
    install.packages(“doRNG”)
    install.packages(“KernSmooth”)
    install.packages(“doMC”, repos=“http://R-Forge.R-project.org”)
    install.packages(“DT”)

    install.packages(“shiny”)

    BiocManager::install(‘shiny’)

    #bioconductor版本小于4.0或你的R(3.6)的版本也比较老,你可能得试试下面的方法进行安装
    devtools::install_github(“aertslab/SCENIC@v1.1.2”)
    devtools::install_github(“aertslab/AUCell”)
    devtools::install_github(“aertslab/RcisTarget”)
    devtools::install_github(“aertslab/GENIE3”)

加载数据

输入数据的表达矩阵为gene-summarized counts,不同于其他进阶分析的是,输入的数据最好是raw countsnormalized counts。计算后的TPMFPKM/RPKM之类也是允许的, 但是这些可能会导致人为的共变量引入,避免节外生枝,推荐用raw count。但总的来说,** raw (logged) UMI counts**, normalized UMI counts, 和TPM都能产生值得信赖的效果

### Load data
loomPath <- system.file(package="SCENIC", "examples/mouseBrain_toy.loom")
library(SCopeLoomR)
loom <- open_loom(loomPath)#获取loom文件
exprMat <- get_dgem(loom)#取出表达信息
cellInfo <- get_cell_annotation(loom)#获取注释信息
close_loom(loom)

而Python版的SCENIC是推荐使用loom作为输入数据的,在参考文章SCENIC单细胞转录因子预测|3.软件安装与数据准备中会教大家如何利用表达矩阵和注释信息创建loom文件(to loom)

SCENIC工作流的主要命令的概述

在后面会有更详细的步骤

###初始化 SCENIC 设置,设置分析环境
library(SCENIC)
#options(max.connections = 256)#增加最大连接数
data(list="motifAnnotations_mgi_v9", package="RcisTarget")
motifAnnotations_mgi <- motifAnnotations_mgi_v9
scenicOptions <- initializeScenic(org="mgi", dbDir="D:/R/seurat/SCENIC/cisTarget_databases", nCores=10)
# scenicOptions@inputDatasetInfo$cellInfo <- "int/cellInfo.Rds"
saveRDS(scenicOptions, file="int/scenicOptions.Rds") 

##### 构建Co-expression network
#基因过滤/选择,去除最有可能是噪音的基因
genesKept <- geneFiltering(exprMat, scenicOptions,minCountsPerGene=3*.01*ncol(exprMat),minSamples=ncol(exprMat)*.01)
exprMat_filtered <- exprMat[genesKept, ]
runCorrelation(exprMat_filtered, scenicOptio
### 转录因子分析的生物信息学工具与方法 #### GENIE3算法的应用 GENIE3是一种基于机器学习的方法,用于推断基因调控网络。它接受基因表达矩阵作为输入,支持多种标准化形式的数据(如UMI、TPM或FPKM/RPKM)。GENIE3的核心功能在于识别潜在的转录因子及其目标基因之间的关系,并通过重要性度量(Importance Measure, IM)评估每种关联的可靠性[^4]。 #### SCENIC工具的功能 SCENIC是一款专注于单细胞RNA测序数据分析的软件包,特别适合于构建和解析顺式调控网络。通过对大规模单细胞数据集的处理,SCENIC能够揭示不同细胞亚群内的特异性转录因子活性模式。这种方法已被成功应用于肿瘤样本的小鼠大脑图谱研究中,进一步加深了对疾病机制的理解[^3]。 #### 实验验证的重要性 尽管计算模型能提供大量候选转录因子-靶基因对的信息,但最终仍需依赖湿实验加以确认。例如,可以通过染色质免疫沉淀技术(ChIP-seq)、电泳迁移率变动测定法(EMSA)等方式检测特定转录因子是否真正结合到预期的目标区域上并发挥功能性影响[^1]。 #### 综合策略建议 为了全面理解某个给定条件下活跃着哪些关键性的转录因子,推荐采用如下综合方案:先利用像GENIE3这样的全局扫描型算法初步筛选出一批可能性较高的TF-Gene组合;再借助更精细粒度的技术比如SCENIC细化至具体场景下的动态变化规律;最后辅之以传统分子生物学手段完成最后一公里的确证工作流程[^2]。 ```python # 示例代码片段展示如何加载GENIE3所需的基础数据结构 import pandas as pd def load_gene_expression_data(file_path): """Load gene expression matrix from a file.""" data = pd.read_csv(file_path, index_col=0) return data.values # Return the numerical values of the DataFrame gene_expr_matrix = load_gene_expression_data('example_gene_expr.csv') print(gene_expr_matrix.shape) # Output shape to verify dimensions match expectations ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值