seurat v5对象转换成v4 ;seurat v4和v5互相转换

大家好,有人在生信技能树群里问:如何使用seurat v5读取v4创建的文件

我直觉告诉我不要重新生成,肯定有简便方法。

一 Seurat官网都有哪些内容

我们去官网文档来找个简便方法:https://satijalab.org/seurat/

好像没有说seurat v5和v4对象可以直接转换,别着急,咱继续看

二 Seuratv5和v4的区别到底在哪里

官网上都说啦:https://satijalab.org/seurat/articles/announcements.html

主要有这5点区别:

  • 1 Seurat 对象和 Assay 类发生了变化:

  • 支持更多种类的检测和数据类型,包括磁盘上的矩阵。

  • 引入了分层结构来存储数据,例如原始计数、标准化数据和 z 得分/方差稳定数据。

  • 可以使用 $ 访问器或 LayerData 函数来访问数据。

  • 现有的 Seurat v4 函数和工作流程仍可在 v5 中使用。

  • 2 整合工作流程发生了变化:

  • 简化了整合流程,提高了速度和内存效率。

  • 整合结果与 v4 工作流程略有不同,但用户仍可在 v5 中运行 v4 整合工作流程。

  • 所有数据可以保存为单个对象,整合前可以拆分层。

  • 3 差异表达分析发生了变化:

  • 使用 presto 包(如果可用)进行差异表达分析,以加快速度。

  • 在计算 log-FC 时,在组级别而不是细胞级别实施伪计数,这可能会导致更高的 logFC 估计值,但也可能更不稳定。

  • 4 SCTransform v2 发生了变化:

  • 默认使用 SCTransform 的更新版本 2。

  • 用户可以设置 vst.flavor = "v1" 参数来运行以前的工作流程。

  • 5 Pseudobulk analysis发生了变化(伪批量分析):

  • 鼓励使用 AggregateExpression 函数进行伪批量分析,以降低噪音、提高低表达基因的定量并减少数据矩阵的大小。

但是还是没看到seurat v5和v4对象可以直接转换,别着急,咱继续看


三 万能的google与github给出了答案

#https://github.com/satijalab/seurat/issues/7409# convert a v5 assay to a v3 assaypbmc3k[["RNA3"]] <- as(object = pbmc3k[["RNA"]], Class = "Assay")# convert a v3 assay to a v5 assaypbmc3k[["RNA5"]] <- as(object = pbmc3k[["RNA3"]], Class = "Assay5")

可以看到转换前后的大小变化

v3和v5都可以互相转换,应该不需要我写v4 和v5互相转换了吧

如果实在想看,你看今天的第二篇推文就行啦

后记

本文技术不难,更多的是一种思想方法,帮助大家去开拓自己的思路。

交流更多,加我微信,备注 姓名 学校

看完记得顺手点个“在看”哦!

猜你喜欢

转载自blog.csdn.net/qq_52813185/article/details/135257615