cellranger使用的初步探索(4):R读取cellranger的输出文件

在上一篇笔记里,练习了使用cellranger aggr整合不同GEM well的样品(cellranger使用的初步探索(3)cellranger aggr),得到的"outs"文件夹里,有一个名为 “filtered_gene_bc_matrices_mex”的子文件夹,里面有三个文件:

其中,genes.tsv是基因名称(需要注意的是,我使用的cellranger是2.2版本,目前v3版本的gene.tsv已经改为 features.csv);barcodes.tsv是每一个barcode的序列,也就是每一个细胞的ID;matrix.mtx就是count矩阵。

> library(Matrix)
#读取三个文件
> barcode.path <- paste0("barcodes.tsv")
> features.path <- paste0("genes.tsv")
> matrix.path <- paste0("matrix.mtx")
> mat <- readMM(file = matrix.path)
> feature.names = read.delim(features.path, 
                           header = FALSE,
                           stringsAsFactors = FALSE)
> barcode.names = read.delim(barcode.path, 
                           header = FALSE,
                           stringsAsFactors = FALSE)

feature.name(基因名称矩阵)长这样:

barcode.names(细胞barcode矩阵)长这样:

> colnames(mat) = barcode.names$V1#把细胞ID赋值给count矩阵的列名,这样每一列就是一个细胞
> rownames(mat) = feature.names$V2#把基因名称的第二列赋值给count矩阵的行名,这样行就是基因

看一下count矩阵:

> mat[1:4, 1:4]
4 x 4 sparse Matrix of class "dgTMatrix"
             AAACCTGAGGATGTAT-1 AAACCTGCAGCGATCC-1 AAACCTGGTACGAAAT-1 AAACGGGAGCTGGAAC-1
RP11-34P13.3                  .                  .                  .                  .
FAM138A                       .                  .                  .                  .
OR4F5                         .                  .                  .                  .
RP11-34P13.7                  .                  .                  .                  .
> dim(mat) #在count矩阵里有3万多个基因,7922个细胞
[1] 33694  7922

之后就可以使用Seurat或者其他R包进行下游分析了~可以参考我之前的笔记:
1.单细胞测序分析之Seurat(3.0)包学习笔记
2.单细胞测序分析之Monocle2包学习笔记
3.单细胞测序分析之scater包学习笔记

你可能感兴趣的:(cellranger使用的初步探索(4):R读取cellranger的输出文件)