怎样使用monocle包进行pseudotime分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
monocle是一个专门用于分析单细胞转录组数据的R包,提供了聚类,pseudotime, 差异分析等多种功能。
这里主要介绍使用该R包进行pseudotime分析的步骤,可以分为以下5步
monocle
包有很多种读取数据的方式,这里只展示了读取Seurat
中的对象的方法,代码如下
# 加载需要的R包 library(Seurat) library(monocle) # 设置cell ranger输出结果目录 input_dir <- "/scRNA/outs/filtered_gene_bc_matrices/GRCh48/" # 读取数据 pbmc.data <- Read10X(data.dir = input_dir) # 创建Seurat中的对象 pbmc <- CreateSeuratObject(raw.data = pbmc.data, project = "10X") # 将Seurat中的对象转换为monocle识别的对象 cds <- importCDS(pbmc)
在monocle
中,用CellDataSet
这种class来存储数据,示意如下
代码如下
cds <- estimateSizeFactors(cds) cds <- estimateDispersions(cds)
第一行代码用于评估每个细胞的sizefactor, 用于后续归一化;第二行代码计算基因的方差。
通过pData
和fData
两个函数,可以查看基因和细胞的相关信息,示意如下
筛选基因没有一个固定标准,可以根据自己的需要灵活选择,这里只展示其中一种
disp_table <- dispersionTable(cds) unsup_clustering_genes <- subset(disp_table, mean_expression >= 0.1) cds <- setOrderingFilter(cds, unsup_clustering_genes$gene_id)
使用DDRTree
的方法进行降维分析,代码如下
cds <- reduceDimension( cds, max_components = 2, method = 'DDRTree')
代码如下
cds <- orderCells(cds)
运行之后,对于每个细胞,会给出一个pseudotime
值,示意如下
可视化的代码如下
plot_cell_trajectory(cds)
降维之后,在二维空间展示细胞pseudotime的分布,可以看到是一个树状结构,除了上述方法外,还可以根据pseudotime的值给细胞赋颜色,代码如下
plot_cell_trajectory(cds, color_by = "Pseudotime")
其实就是将fData
中对应的列设置为颜色,如果想要观察不同细胞亚型的分布,可以在fData
中新增一列细胞对应的cluster ID, 然后用这一类来设置颜色。
对于pseudotime分析,我们需要明白它的基本输入就是一张基因在细胞中表达量的表格,与细胞的聚类结果无关,只不过在可视化的时候根据聚类的结果填充了颜色而已。
关于怎样使用monocle包进行pseudotime分析问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。