单细胞转录组数据分析之RNA速率分析——scVelo
RNA速率(RNA Velocity)是一个描述基因表达状态随时间变化速率的概念。具体来说,它指的是已剪接mRNA(Spliced mRNA)和未剪接mRNA(Unspliced mRNA)的含量相对于时间的变化速率。
scVelo是一个开源的Python库,专门用于单细胞转录组数据中的RNA速率分析。它通过分析单细胞RNA测序(scRNA-seq)数据,揭示细胞内在的动态过程,帮助科学家理解基因表达的时间轨迹和细胞状态变化。
网址:https://gitcode.com/gh_mirrors/sc/scvelo
说明文档:https://scvelo.readthedocs.io/en/stable/
基本原理
通过区分未剪接的mRNA与成熟的剪接mRNA,可以近似地得到mRNA丰度的变化,获得基因特异性速度,得出可能的细胞状态变化,从而追溯细胞的起源和潜在的命运。
RNA速率应用方向
(1)预测细胞未来的表达状态:通过RNA速率推断细胞未来可能的表达状态和动态变化。
(2)研究细胞动态:RNA速率有助于理解细胞内基因表达的动态变化,包括转录、剪接和降解的速率。
(3)构造细胞分化轨迹:通过分析不同基因的RNA速率,可以构建细胞分化的轨迹,揭示细胞分化的方向性和机制。
(4)分类不同的细胞动力学机制:RNA速率还可以用于对不同的细胞动力学机制进行分类,从而更好地理解细胞的不同行为和反应。
软件使用介绍
scVelo软件主要包括以下几个步骤:
1)数据过滤及标准化
scv.pp.filter_and_normalize(adata)
2)计算RNA速率一阶矩和二阶矩(均值与非中心方差
scv.pp.moments(adata)
3)估算RNA速率
scv.t1.velocity(adata)
注意:默认mode='stochastic',也可以设置成'dynamics' (Dynamical Modeling)
4)将速率投影到低维度
scv.t1.velocity_graph(adata)
5)可视化
# RNA速率流线图
scv.pl.velocity_embedding_stream(adata, basis='umap')

# 伪时间热图
scv.tl.velocity_pseudotime(adata)
scv.pl.scatter(adata, color='velocity_pseudotime', cmap='gnuplot')

# 驱动基因分析
scv.tl.recover_dynamics(adata)
top_genes = adata.var['fit_likelihood'].sort_values(ascending=False).index[:300]
scv.pl.heatmap(adata, var_names=top_genes, sortby='velocity_pseudotime', col_color=groupby,n_convolve=100, dpi=50)

文献摘录
这里介绍一篇发表于2022年的文章《Single-cell RNA landscape of the osteoimmunology microenvironment in periodontitis》,本文作者利用scVelo来确定成骨细胞谱系细胞的转录命运。通过scVelo估算RNA速率,并投影到UMAP图上,箭头代表了细胞群之间的分化关系,可以看到MSC细胞群(黄色)向pre-OB和OB 细胞群分化,再结合拟时序分析(monocle2)进一步证实MSC到Pre-OB和OB的分化关系。

新闻中心
News Senter
上海生物芯片有限公司
Shanghai Biochip Co., Ltd.
版权所有©上海生物芯片有限公司
电子邮箱:
marketing@shbiochip.com
地址: 上海市浦东新区张江高科技园区李冰路151号
技术电话:
4001002131
扫描查看
微信公众号