Question: differential expression between clusters (in distinct "treatments") in scRNAseq
0
5 months ago by
Bogdan580
Palo Alto, CA, USA
Bogdan580 wrote:

Dear all,

considering the tutorials presented by Aaron Lun, Davis McCarthy and John C. Marioni, on scRNA-seq :

how shall I compute the differential expression between 2 cell clusters in 2 distinct conditions ; for example, in the above tutorial,

to compute the differential expression between :

• -- cluster 1 cells in "control" versus "oncogene induced"

• -- cluster 1 cells in "control" versus cluster 2 (or any other cluster) in "oncogene induced"

thanks a lot !

-- bogdan

limma scran scde scater sc3 • 163 views
modified 5 months ago • written 5 months ago by Bogdan580
Answer: differential expression between clusters (in distinct "treatments") in scRNAseq
0
5 months ago by
Aaron Lun25k
Cambridge, United Kingdom
Aaron Lun25k wrote:

Your post is not formatted well, so I'm going to assume you're referring to two separate contrasts:

• cluster 1 cells in "control" versus "oncogene induced"
• cluster 1 cells in "control" versus cluster 2 (or any other cluster) in "oncogene induced"

Just paste the cluster ID with the oncogene status for each cell to define up to two groups per original cluster. Then do your differential testing between groups as usual (e.g., with findMarkers(), or via more standard methods like edgeR). While you can compare between any groups in this manner, there is no clear scientific utility from comparing cluster 1 in one condition with cluster 2 in another condition. You'll probably get DE genes, but are they from the differences in clusters? Or differences in conditions?

It would be great and very helpful indeed, if I could have an example of the R code from you, in order to accomplish the task of computing the differential expression between :

• -- cluster 1 cells in "control" versus

• -- cluster 1 cells in "oncogene induced"

I did note that in colData(sce) we do have the cluster numbers. And in order to select the cells that are associated with cluster1 (in "control" and "induced"), i would have 1) to select specifically those cells and 2) to filter them ..

Which function shall i use for selecting the cells associated with cluster 1 ? The documentation of scran includes a section on "Gene selection" (page 45), but not on "Cell selection". thank you very much ;) !

Well, you literally just paste them together. Like paste(sce$cluster, sce$Oncogene). And then use the resulting vector as your grouping factor in a DE analysis, or as cluster= in findMarkers(). Then you can compare between any pair of cluster:condition combinations that you are interested in (noting my comments above about interpretation).

There's no need for selecting and filtering, I don't understand why you think that's necessary. But for what it's worth, the way to select cells associated with cluster 1 (or whatever you want to select for) would be the usual way of subsetting a SummarizedExperiment object.

sce.1 <- sce[,sce\$cluster=="1"]


Thank you Aaron. It is very helpful. Have a good weekend !

If I may, I will verify with you a bit later the entire pipeline that we have at this moment.

Thank you Aaron also for the tutorial on differential expression using pseudo-bulk factors : very useful !

https://bioconductor.org/packages/release/workflows/vignettes/simpleSingleCell/inst/doc/de.html

It would be great and very helpful indeed, if I could have an example of the R code from you, in order to accomplish the task of computing the differential expression between :

• -- cluster 1 cells in "control" versus

• -- cluster 1 cells in "oncogene induced"

I did note that in colData(sce) we do have the cluster numbers. And in order to select the cells that are associated with cluster1 (in "control" and "induced"), i would have 1) to select specifically those cells and 2) to filter them ..

Which function shall i use for selecting the cells associated with cluster 1 ? The documentation of scran includes a section on "Gene selection" (page 45), but not on "Cell selection". thank you very much ;) !

woops .. sorry for double posting. It was unintentional.

Dear Aaron, I would have a few more questions about SCRAN and the use of MNNCORRECT() and will open another question track here on the BioC website.