Seurat -- Introduction to scRNA-seq integration 跟随学习记录

文章目录

数据是如何转换的

seurat object 中assays R N A @ l a y e r s RNA@layers RNA@layerscounts 存放了 expression matrix (counts)

NormalizeData(sce) 后 assays R N A @ l a y e r s RNA@layers RNA@layersdata 存放了 normalization后的数据

FindVariableFeatures(sce) 就是把一些细胞高表达一些细胞低表达的高变基因抽出来放在 assays R N A @ f e a t u r e s 下面 S c a l e D a t a ( s c e ) 把上述的高变基因中心化,数据放在 a s s a y s RNA@features下面 ScaleData(sce) 把上述的高变基因中心化,数据放在assays RNA@features下面ScaleData(sce)把上述的高变基因中心化,数据放在assaysRNA@layers$scale.data 下面

RunPCA(sce) 使用assays R N A @ l a y e r s RNA@layers RNA@layersscale.data 数据进行PCA降维

FindNeighbors(sce) 根据PCA结果@reductions$pca 构建SNN图 结果放在@graphs下面

FindClusters(sce) 根据@graphs下面的数据寻找cluster 结果放到 @meta.data$unintegrated_clusters 下面

如果进行了样本整合:

IntegrateLayers(object = sce, method = CCAIntegration, orig.reduction = "pca", new.reduction = "integrated.cca")该方法使用PCA和scale.data下面的数据进行学习,产生一个新的降维数据 @reductions$integrated.cca,然后这个降维数据用于后续的构建SNN图和聚类

原始ifnb数据对象

R 复制代码
library(Seurat)
library(SeuratData)
library(patchwork)

# install dataset
InstallData("ifnb")

# load dataset
ifnb <- LoadData("ifnb")

原始的ifnb数据对象是什么样子?

Splits object后的数据对象

数据对象构建完成后的标准流程

R 复制代码
# run standard anlaysis workflow
ifnb <- NormalizeData(ifnb)
ifnb <- FindVariableFeatures(ifnb)
ifnb <- ScaleData(ifnb)
ifnb <- RunPCA(ifnb)

ifnb <- FindNeighbors(ifnb, dims = 1:30, reduction = "pca")
ifnb <- FindClusters(ifnb, resolution = 2, cluster.name = "unintegrated_clusters")

ifnb <- RunUMAP(ifnb, dims = 1:30, reduction = "pca", reduction.name = "umap.unintegrated")
DimPlot(ifnb, reduction = "umap.unintegrated", group.by = c("stim", "seurat_clusters"))

ifnb <- RunUMAP(ifnb, dims = 1:30, reduction = "integrated.cca")
Normalization后的数据对象
scale 后的数据对象

不同的样本进行整合

R 复制代码
ifnb <- IntegrateLayers(object = ifnb, method = CCAIntegration, orig.reduction = "pca", new.reduction = "integrated.cca",
    verbose = FALSE)

# re-join layers after integration
ifnb[["RNA"]] <- JoinLayers(ifnb[["RNA"]])

ifnb <- FindNeighbors(ifnb, reduction = "integrated.cca", dims = 1:30)
ifnb <- FindClusters(ifnb, resolution = 1)
JoinLayers干了什么
相关推荐
CDA数据分析师干货分享10 分钟前
汉江师范学院数据科学与大数据技术专业大二学生:CDA一级学习经验
大数据·经验分享·学习·数据分析·cda证书·cda数据分析师
SuniaWang13 分钟前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题四:《Ollama 模型管理与调优:让 AI 模型在低配服务器上流畅运行》
人工智能·学习·spring
冰水不凉30 分钟前
cartographer源码阅读四-MapBuilder
学习·slam
梦..1 小时前
Allegro学习记录(一)
arm开发·单片机·嵌入式硬件·学习·硬件架构·硬件工程·pcb工艺
Amazing_Cacao2 小时前
工艺师初级|参数与风味对齐(精品可可,精品巧克力)
笔记·学习
_饭团3 小时前
字符串函数全解析:12 种核心函数的使用与底层模拟实现
c语言·开发语言·学习·考研·面试·蓝桥杯
Larry_Yanan3 小时前
Qt网络开发之基于 QWebEngine 实现简易内嵌浏览器
linux·开发语言·网络·c++·笔记·qt·学习
芯跳加速3 小时前
AI 视频自动化学习日记 · 第三天
人工智能·学习·ai·自动化·音视频
小陈phd4 小时前
多模态大模型学习笔记(二十一)—— 基于 Scaling Law方法 的大模型训练算力估算与 GPU 资源配置
笔记·深度学习·学习·自然语言处理·transformer
丝斯20114 小时前
AI学习笔记整理(75)——Python学习4
人工智能·笔记·学习