After having the output from SingleR for cell type annotation, what's the next step to assign the cell type to each cluster
1
1
Entering edit mode
FantasticAI ▴ 10
@75ec22fc
Last seen 2.8 years ago
United States

Hi

I'm quite confused what's the workflow after I get the output from singleR output. I have 3 groups scRNAseq data(4 control, 8 treatment1, 8 treatment2), and my goal is to give cell type annotation for each group. And now, I just learned how to perform QC, normalization, dimension reduction, and singleR for one dataset. To give the cell type for each group, should I integrate datasets within each group separately, and then using singleR? specifically, how to assign the cell type to each cluster on my tSNE plot for each group?

I really appreciate any comment, thank you.

SingleCellSignalR SingleCellWorkflow SingleR • 3.2k views
ADD COMMENT
0
Entering edit mode

I believe, you have a seurat object with 3 groups with barcodes. If this is the case, it's straight forward, get singleR predictions on each cell and add this to seurat object's meta.data.

Here is an example,

HCA <- HumanPrimaryCellAtlasData() # human cell atlas dataset (ref for singleR prediction)

sobj_counts <- as.SingleCellExperiment(sobj) # sobj is seurat object

sobj_counts <- logNormCounts(sobj_counts)

hca.predict <- SingleR(sobj_counts, ref = HCA, labels = HCA$label.main)

Add predicted data as metadata to the seurat object

sobj[["HCA"]] <- hca.predict$labels

dimplot

DimPlot(sobj, group.by = c("HCA","sample_types), reduction = "tsne/umap",label =T/F)

moreover, you can split by = "sample types to view the predictions

I hope this helps!

Best, SG

ADD REPLY
1
Entering edit mode
Aaron Lun ★ 28k
@alun
Last seen 5 hours ago
The city by the bay

SingleR is a well-behaved classification method in that each cell's assigned cell type is independent of the presence/behavior of other cells in the test dataset. So whether you call SingleR on each dataset separately, or call SingleR on the combined object, it doesn't matter; you'll get the same results. (Assuming that the reference is the same, of course.)

That statement above assumes that you're calling SingleR on either the counts or values generated by a monotonic transformation of the counts, e.g., log-normalized expression values. This may or may not be the case depending on what you're doing upstream - for example, see comments here. In particular, output from data integration or batch correction are definitely not appropriate for SingleR.

ADD COMMENT

Login before adding your answer.

Traffic: 712 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6