问题分析
当我分析多个样本的时候,而我的seurat又是v5时,通常就会出现这样的报错。
错误的原因有两个:
一个是参数名有slot变成layer
一个是GetAssayData 不是自动合并多个layers,而是选择保留。
那么如果我们想合并多个样本,并提取计数矩阵咋办呢?
解决办法:
我是使用这个进行两个seurat合并
sce.big <- merge(sceList[[1]],y = c(sceList[[2]]),add.cell.ids = samples,project = "Rn")
但是虽然两个seurat合并了,但layer没有合并
为了方便后面的分析,核心解决办法是这个
# 使用 JoinLayers 函数合并多个图层
sce.big <- JoinLayers(sce.big)
# 使用 LayerData 函数提取合并后的计数数据
c <- LayerData(sce.big, assay = "RNA", layer = "counts")
亲测有效!
提供个链接给大家参考:
https://github.com/satijalab/seurat/issues/7985#issuecomment-1806483174