一、monocle3介绍
monocle3可以执行的3个主要的功能
对细胞进行聚类、分类和计数。Monocle 3 可识别新的(可能是罕见的)亚型细胞
构建单细胞轨迹。通过拟时序分析帮助大家解析生物体发育、疾病等过程中细胞发生的变化。这是最主要的功能。
差异表达分析。Monocle 3 包括一个复杂但易于使用的差分表达系统,可以表征新的细胞类型和状态始于与其他更好理解的细胞进行比较。
主要流程
1.读取数据,创建cell_data_set对象。
2.数据预处理:标准化,去除批次效应
3.降维
4.聚类
5.进行差异基因表达分析
6.拟时序分析
二、关于不同数据的读取办法
(一)Bioconductor的ExpressionSet对象:
monocle3读取的数据要包含3个部分:
- expression_matrix:表达式值的数字矩阵,其中行是gene,列是cell
- cell_metadata
:
数据框,其中行是cell,列是细胞属性(如细胞类型、培养条件、获取日期等) - gene_metadata
:
数据框,其中行是特征(例如基因),列是基因属性,例如生物型,GC含量等。
输入前应该确保几个“等式”
- expression_matrix 列数= cell_metadata 行数 并且两者要相匹配
- expression_matrix 行数= gene_metadata 列数 并且两者要相匹配
- gene_metadata的其中一列应为“gene_short_name”,表示每个基因的基因符号或简要名称
创建对象示例
# Load the data
expression_matrix <- readRDS(url("https://depts.washington.edu:/trapnell-lab/software/monocle3/celegans/data/cao_l2_expression.rds"))
cell_metadata <- readRDS(url("https://depts.washington.edu:/trapnell-lab/software/monocle3/celegans/data/cao_l2_colData.rds"))
gene_annotation <- readRDS(url("https://depts.washington.edu:/trapnell-lab/software/monocle3/celegans/data/cao_l2_rowData.rds"))
# Make the CDS object
cds <- new_cell_data_set(expression_matrix,
cell_metadata = cell_metadata,
gene_metadata = gene_annotation)
(二)从 10X 输出生成cell_data_set
要找到正确的文件,必须提供包含未修改的Cell Ranger“outs”文件夹的文件夹的路径。文件结构应如下所示:10x_data/outs/filtered_feature_bc_matrix/,其中filtered_feature_bc_matrix包含 files features.tsv.gz、barcodes.tsv.gz 和 matrix.mtx.gz。(还可以处理Cell Ranger V2数据,其中“feature”被替换为“gene”,并且文件未被gz压缩。(这个读取起来很容易报错)
读取示例:注意使用函数是load_cellranger_data
# Provide the path to the Cell Ranger output.
cds <- load_cellranger_data("~/Downloads/10x_data")
或者如果有以下3个文件,也可直接读取:注意使用函数是load_mm_data