如何解决表明 sce 不是数字的 addPerCellQC 错误?

问题描述

我从事 R 分析单细胞 RNA seq 数据。我目前正在尝试将 QC 数据添加到我的 SingleCellExperiment (sce) 对象中; mito_genes、ribo_genes 和 ERCC_genes 包含这些特定基因的行位置,如

mito_genes <- grep("^mt-",rownames(sce))

ribo_genes <- grep("^Rp[ls]",rownames(sce))

ERCC_genes <- grep("^ERCC-",rownames(sce))

将 QC 数据添加到 colData 的代码

sce <- addPerCellQC(sce,subsets=list(Mito = mito_genes,Ribo = ribo_genes,ERCC = ERCC_genes))
colData(sce)

我得到的错误Error in base::colSums(x,na.rm = na.rm,dims = dims,...) : 'x' must be numeric

在我看来,sce 本身可能有问题,因为 perCellQcmetrics(sce) 返回相同的错误。我之前已经生成了 sce 并将 Indexsort 数据附加到了另一个实验中。但是我以前没有遇到过这个错误。我试过重新加载所有东西,等等。

感谢您的帮助!

解决方法

错误是在我的索引排序矩阵中遗漏了一个非数字列,这导致 sce 对象被识别为非数字。