前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用monocle包进行pseudotime分析

使用monocle包进行pseudotime分析

作者头像
生信修炼手册
发布2019-12-19 11:50:18
2.3K0
发布2019-12-19 11:50:18
举报
文章被收录于专栏:生信修炼手册

欢迎关注”生信修炼手册”!

monocle是一个专门用于分析单细胞转录组数据的R包,提供了聚类,pseudotime, 差异分析等多种功能,该项目的网址如下

https://cole-trapnell-lab.github.io/monocle-release/

本文主要介绍使用该R包进行pseudotime分析的步骤,可以分为以下5步

1. 读取数据

monocle包有很多种读取数据的方式,这里只展示了读取Seurat中的对象的方法,代码如下

代码语言:javascript
复制
# 加载需要的R包
library(Seurat)
library(monocle)
# 设置cell ranger输出结果目录
input_dir <- "/scRNA/outs/filtered_gene_bc_matrices/GRCh38/"
# 读取数据
pbmc.data <- Read10X(data.dir = input_dir)
# 创建Seurat中的对象
pbmc <- CreateSeuratObject(raw.data = pbmc.data, project = "10X")
# 将Seurat中的对象转换为monocle识别的对象
cds <- importCDS(pbmc)

monocle中,用CellDataSet这种class来存储数据,示意如下

2. 预处理

代码如下

代码语言:javascript
复制
cds <- estimateSizeFactors(cds)
cds <- estimateDispersions(cds)

第一行代码用于评估每个细胞的sizefactor, 用于后续归一化;第二行代码计算基因的方差。

通过pDatafData两个函数,可以查看基因和细胞的相关信息,示意如下

3. 筛选基因

筛选基因没有一个固定标准,可以根据自己的需要灵活选择,这里只展示其中一种

代码语言:javascript
复制
disp_table <- dispersionTable(cds)
unsup_clustering_genes <- subset(disp_table, mean_expression >= 0.1)
cds <- setOrderingFilter(cds, unsup_clustering_genes$gene_id)
4. 降维分析

使用DDRTree的方法进行降维分析,代码如下

代码语言:javascript
复制
cds <- reduceDimension(
 cds,
 max_components = 2,
 method = 'DDRTree')
5. psudotime分析

代码如下

代码语言:javascript
复制
cds <- orderCells(cds)

运行之后,对于每个细胞,会给出一个pseudotime值,示意如下

可视化的代码如下

代码语言:javascript
复制
plot_cell_trajectory(cds)

降维之后,在二维空间展示细胞pseudotime的分布,可以看到是一个树状结构,除了上述方法外,还可以根据pseudotime的值给细胞赋颜色,代码如下

代码语言:javascript
复制
plot_cell_trajectory(cds, color_by = "Pseudotime")

其实就是将fData中对应的列设置为颜色,如果想要观察不同细胞亚型的分布,可以在fData中新增一列细胞对应的cluster ID, 然后用这一类来设置颜色。

对于pseudotime分析,我们需要明白它的基本输入就是一张基因在细胞中表达量的表格,与细胞的聚类结果无关,只不过在可视化的时候根据聚类的结果填充了颜色而已。

·end·

—如果喜欢,快分享给你的朋友们吧—

扫描关注微信号,更多精彩内容等着你!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信修炼手册 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 读取数据
  • 2. 预处理
  • 3. 筛选基因
  • 4. 降维分析
  • 5. psudotime分析
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档