(一)准备工作
我们先向R中安装如下包以确保准备工作的完成
install.packages("BiocManager") BiocManager::install("mulltest")#似乎只有Bioc里面才能安装mulltest if(!require(Seurat))install.packages("Seurat") if(!require(dplyr))install.packages("dplyr") if(!require(mindr))install.packages("mindr") if(!require(tidyverse))install.packages("tidyverse") install.packages("patchwork")#用于ggplot2 install.packages("stringi") library(dplyr)#导入包裹 library(Seurat) library(patchwork)
(二)导入数据
我们这边有三种导入数据的方式
1.通过读取Read10X()来实现读取
rm(list = ls())#在进行读取前,如果有读取过数据,则需要清空一下内存 pbmc.data <- Read10X(data.dir = "filtered_gene_bc_matrices/hg19/")#读取文件地址 #需要注意的是Read10X()函数接受的参数为目录名,该目录包含了所需的三个配套文件,只能分别是barcodes.tsv.gz、features.tsv.gz、matrix.mtx.gz,因此read10X函数可以自动加载,否则需要修改文件名 #上述这三个文件名这是cellranger上游比对分析产生的3个文件,分别代表细胞标签(barcode)、基因ID(feature)、表达数据(matrix),一般先使用read10X()对这三个文件进行整合,得到行为基因、列为细胞的表达矩阵(为稀疏矩阵dgCMatrix格式,节约内存)
2.当读取的数据是为稀疏矩阵
直接通过矩阵读取即可
matrix_data <- read.table("XXXXX.txt", sep="\t", header=T, row.names=1) dim(matrix_data)
3.h5格式文件
也跟上述一样,不过利用Read10X_h5
()函数读入
sce <- Read10X_h5(filename = xxxxx.h5")
4.h5ad格式
如果出现h5ad格式的文件,我们需要先安装SeuratDisk
包的两个函数;先将后h5ad
格式转换为h5seurat
格式,再使用LoadH5Seurat()
函数读取Seurat对象。
library(SeuratDisk) Convert("XXXXXXX.h5ad", "h5seurat",overwrite = TRUE,assay = "RNA") scRNA <- LoadH5Seurat("GSE153643_RAW/GSM4648565_liver_raw_counts.h5seurat")
5.RDS文件
当我们索要读取的文件为已经做好的文件的时候.我们需要用readRDS()
下列函数读取
rm(list = ls()) pbmc <- readRDS("XXXX.rds") saveRDS(pbmc,"XXXXX.rds")
额外内容
一、关于barcodes.tsv.gz
、features.tsv.gz
、matrix.mtx.gz
之间的区别
(1)barcodes.tsv.gz
就只包括一列信息,即细胞的barcode标签信息
(2)features.tsv.gz
如下可以看出均为基因的注释信息,前两列为基因ID
(3)``matrix.mtx.gz`
如下(前三行为注释信息,其中第三行为total number genes、cells、counts),结合上述细胞标签与基因名信息,知道了前两列分别为基因和细胞的索引,第三列为表达信息。
参考文章:
1.https://www.jianshu.com/p/5b26d7bc37b7
2.https://mp.weixin.qq.com/s/qfM9z8EYtuj82AtHgJGD6A