首页 > 解决方案 > NormalizeData.default 在 R 中的集成 seurat 对象上运行 DoubletFinder 时出错

问题描述

我正在尝试在由各种数据集集成产生的 seurat 对象上运行 DoubletFinder。

Seurat 对象有 2 个分析:RNA 和集成。

集成的 seurat 对象已被完全处理:

DoubletFinder 的 paramSweep_v3() 函数给出以下输出:

sweep.res.list <- paramSweep_v3(integrated.seu, PCs = 1:38, sct = FALSE)
Loading required package: fields
Loading required package: spam
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction 
and overview of this package.
Help for individual functions is also obtained by adding the
suffix '.spam' to the function name, e.g. 'help( chol.spam)'.

Attaching package: ‘spam’

The following object is masked from ‘package:R.utils’:

    cleanup

The following objects are masked from ‘package:base’:

    backsolve, forwardsolve

Loading required package: maps
See https://github.com/NCAR/Fields for
 an extensive vignette, other supplements and source code 
[1] "Creating artificial doublets for pN = 5%"
[1] "Creating Seurat object..."
[1] "Normalizing Seurat object..."
Error in NormalizeData.default(object = GetAssayData(object = object,  : 
  trying to get slot "params" from an object of a basic class ("NULL") with no slots

为什么这表明我的 Seurat 对象中没有插槽?

标签: rrna-seqseurat

解决方案


DoubletFinder 自述文件明确指出您不应在聚合数据集上运行它。它将产生虚假的人造双峰:

[ https://github.com/chris-mcginnis-ucsf/DoubletFinder][1]

不要将 DoubletFinder 应用于代表多个不同样本的聚合 scRNA-seq 数据(例如,多个 10X 泳道)。例如,如果您对表示跨不同 10X 泳道测序的 WT 和突变细胞系的聚合数据运行 DoubletFinder,则会从 WT 和突变细胞生成人工双联体,而这些细胞在您的数据中不存在。这些人造双峰会扭曲结果。值得注意的是,可以对通过将单个样本拆分到多个 10X 泳道生成的数据运行 DoubletFinder。

我通过读取单个样本、将它们单独聚类、运行 DoubletFinder、删除双峰然后运行集成工作流程来做到这一点。


推荐阅读