calculateQCMetrics defunct, how to calculate the quality metrics by perCellQCMetrics

Bioinformatics Asked on January 1, 2022

I am trying to follow a tutorial from Sanger institute (from May 2019) on analysis of single cell RNA Seq data. They use calculateQCMetric function to calculate the quality metrics, but I am getting an error message that calculateQCMetric is a deprecated (isSpike function is also deprecated). I want to calculate the quality metrics. Can anyone provide code for getting QCMetric step? I attached the previous defunct code below:

umi <- calculateQCMetrics(
   feature_controls = list(
       ERCC = isSpike(umi, "ERCC"), 
        MT = isSpike(umi, "MT")

And I use StupidWolf’s code from this question isSpike function in SingleCellExperiment package is deprecated? to instead isSpike function. I also attached below:

Spikein_names = grep("^ERCC-",rownames(molecules),value=TRUE)
SpikeIn = molecules[Spikein_names,]

g = genes(EnsDb.Hsapiens.v86)
MTgene_names = g[seqnames(g)=="MT"]$gene_id
MTgenes = molecules[rownames(molecules) %in% MTgene_names,]
Have a vector of genes to keep:

keep = setdiff(rownames(molecules),c(SpikeIn,MTgenes))
Then make the single cell object:

sce <- SingleCellExperiment(
Use altExp to slot in the stuff:

altExp(sce, "spike-in") <- SummarizedExperiment(SpikeIn)
altExp(sce, "MTgenes") <- SummarizedExperiment(MTgenes)

I try the below code, which did not work.

> perCellQCMetrics(sce,
 subsets = list(Spikein_names,MTgene_names),
 flatten = TRUE,
 exprs_values = "counts",
 use_altexps = TRUE)

Thanks in advance.

2 Answers

Ok I have figured it out and I am sharing this in case anyone can get help. I used

sce <-addPerCellQC(sce)

which calculated the QC for all the altexps also and adds them to the colData.

Answered by Abhay on January 1, 2022

It would be helpful if you can provide the error message. Guessing from your codes, it's possible that the alternative experiments weren't set correctly. My suggestion:

altExp(sce, "spike-in") <- SummarizedExperiment(assays=list(counts=as.matrix(SpikeIn)))
altExp(sce, "MTgenes") <- SummarizedExperiment(assays=list(counts=as.matrix(MTgenes)))

If you're using altExp, the subsets argument in perCellQCMetrics is unnecessary in this case.


Answered by mattcwh on January 1, 2022

Add your own answers!

Related Questions

Blastp MSA to the same length

0  Asked on July 14, 2021


ATAC-seq macs2 peak splitting in sliding windows

1  Asked on July 12, 2021 by user5191


Subset FASTA file by species name

2  Asked on July 10, 2021 by tahunami


Querying metadata (GDC) using a filter

1  Asked on July 10, 2021 by lab


Get gene sequence based on the annotation

3  Asked on July 9, 2021 by igor-filippov


Hg38 annotation tracks retrieval

1  Asked on July 6, 2021 by trakesh


Extracting WDL map keys as a task

1  Asked on July 5, 2021 by xophmeister


A database for RefSeq protein accession IDs

1  Asked on July 3, 2021 by ehsan-salehabadi


two aligners combined results

1  Asked on July 2, 2021


Does NCBI’s blast API block my IP?

1  Asked on July 1, 2021


Ask a Question

Get help from others!

© 2023 All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP