本文是基于seurat v5版本的教程复现,主要依据来源于官网seurat v5建议大家有时间的话可以去官网进行详细阅读学习!
优势:
劣势:
总之,seurat版本更新之后的效果又好有坏,大家可以自行选择使用哪个版本,不过市面上的很多资源都是基于seurat v4的,但是seurat v5也有其优势,下面则是seurat v5的标准化过程,与seurat有很多相似之处,可供借鉴和参考!
代码如下(示例):
# 主要用于做单细胞分析的各种函数
library(Seurat)
# 主要与批次效应有关
library(harmony)
# 广泛使用的数据分析和可视化的工具集
library(tidyverse)
# 是一个功能强大的R绘图包
library(ggplot2)
# 增强绘图和图形组合的包
library(cowplot)
# 用于数据的操作和处理,管道,过滤,排序等
library(dplyr)
# 用于组合多个图形
library(patchwork)
# 用于文件的处理
library(R.utils)
代码如下(示例):
setwd('G:/diversity_intergration')
代码如下(示例):
# 使用list.files函数列出文件夹中的所有文件
dir_name <- list.files('data/')
dir_name
# 创建一个空的list对象来存储转化之后的seurat对象
scRNAlist <- list()
for (i in 1:length(dir_name)){
counts <- Read10X(data.dir = paste('G:/diversity_intergration/data/',dir_name[i],sep = ''))
# 使用createseuratobject来创建seurat对象,使用counts矩阵,设置样本名为目录名
scRNAlist[[i]] <- CreateSeuratObject(counts = counts,
project = strsplit(dir_name[i],'_')[[1]][2],
min.cells = 3,
min.features = 200)
}
scRNAlist # 查看样本信息
代码如下(示例):
# 注意如果是小鼠为 '^mt-' 人为 '^MT-'
# 如果是小鼠的话,将49-53行改为sc[['HB_percent']] <- PercentageFeatureSet(sc,pattern = "^Hb[^(p)]")
for (i in 1:length(scRNAlist)){
sc <- scRNAlist[[i]] # 获取scRNAlist中的第i个seurat对象
# 计算线粒体的比例
sc[['mt_percent']] <- PercentageFeatureSet(sc,pattern = '^MT-')
# 计算红细胞的比例
HB_genes <- c("HBA1","HBA2","HBB","HBD","HBE1","HBG1","HBG2","HBM","HBQ1","HBZ") # 定义红细胞的基因列表
HB_m <- match(HB_genes,rownames(sc@assays$RNA)) # 在seurat对象的RNA数据中有红细胞基因的索引位置
HB_genes <- rownames(sc@assays$RNA)[HB_m] # 获取匹配到的红细胞基因的行名
HB_genes <- HB_genes[!is.na(HB_genes)]