前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >初试Seurat的V5版本

初试Seurat的V5版本

作者头像
生信技能树jimmy
发布2023-12-26 15:38:08
6220
发布2023-12-26 15:38:08
举报
文章被收录于专栏:单细胞天地单细胞天地

虽然说我们安装了Seurat的V5版本,但是初次使用的时候加载就报错了,如下所示:

代码语言:javascript
复制
The sp package is now running under evolution status 2
     (status 2 uses the sf package in place of rgdal)
Error: package or namespace load failed for ‘SeuratObject’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
 载入了名字空间‘Matrix’ 1.6-1,但需要的是>= 1.6.3
错误: 无法载入程辑包‘SeuratObject’

很明显是Matrix版本问题,只需要卸载它后,更新一下即可,如下所示:

代码语言:javascript
复制
> remove.packages("Matrix")
从‘C:/Users/jimmy/AppData/Local/R/win-library/4.3’中删除程序包
(因为没有指定‘lib’)
> install.packages('Matrix')
将程序包安装入‘C:/Users/jimmy/AppData/Local/R/win-library/4.3’
(因为‘lib’没有被指定)
试开URL’https://cran.rstudio.com/bin/windows/contrib/4.3/Matrix_1.6-4.zip'
Content type 'application/zip' length 4562987 bytes (4.4 MB)
downloaded 4.4 MB

接下来我们就读取10X文件的3个标准文件,使用如下所示的例子,大家可以去自己下载 (2023-GSE202642-肝癌-成纤维单细胞亚群),文章标题是:《CD36+ cancer-associated fibroblasts provide immunosuppressive microenvironment for hepatocellular carcinoma via secretion of macrophage migration inhibitory factor》,里面的降维聚类分群如下所示:

GSE202642

在 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE202642 可以看到作者给出来的3个文件的表达量矩阵:

代码语言:javascript
复制
GSE202642_barcodes.tsv.gz 569.6 Kb (ftp)(http) TSV
GSE202642_features.tsv.gz 325.6 Kb (ftp)(http) TSV
GSE202642_matrix.mtx.gz 666.5 Mb (ftp)(http) MTX

如下所示:

3个文件的表达量矩阵:

这个时候使用Seurat的V5版本和之前Seurat的V4版本读取方式并没有本质上区别,都是:

代码语言:javascript
复制
sce.all=CreateSeuratObject(counts =  Read10X( 'GSE202642/' ) , 
                       min.cells = 5,
                       min.features = 300,)
library(stringr)
sce=sce.all
head(rownames(sce@meta.data))
phe=str_split(rownames(sce@meta.data),'-',simplify = T)
head(phe)
tail(phe)
table(phe[,2])
sce@meta.data$orig.ident=paste0('p',phe[,2])
table(sce@meta.data$orig.ident)

读取之后我就简单的检查一下这个Seurat对象里面的信息,然后遇到第一个报错

代码语言:javascript
复制
> as.data.frame(sce.all@assays$RNA@counts[1:10, 1:2])
Error in as.data.frame(sce.all@assays$RNA@counts[1:10, 1:2]) : 
  "counts"槽名不存在于"Assay5"类别对象中

其实是很简单的debug,只需要查看一下这个Seurat对象结构,就知道了:

代码语言:javascript
复制
as.data.frame(sce.all@assays$RNA@counts[1:10, 1:2])
# 上面的错误
# 可以修改为下面的两种
as.data.frame(sce.all@assays$RNA@layers$counts[1:10, 1:2])
as.data.frame(sce.all@assays$RNA$counts[1:10, 1:2])

真是搞不懂,为什么这么简单的bug就让大家放弃了Seurat的V5,简直是滑天下之大稽。这么多人学了这么久的R代码就之后照抄我的案例代码吗,不会活学活用吗?

而且,这个bug根本就并不会影响整个Seurat数据分析流程啊, 降维聚类分群仍然是ok的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 单细胞天地 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档