carmonalab / UCell

Gene set scoring for single-cell data
GNU General Public License v3.0
132 stars 16 forks source link

UCell gene signature scoring to assign cell-cycle phase #27

Closed bhyu0217 closed 1 year ago

bhyu0217 commented 1 year ago

Hi, Thank you for developing a fascinating tool! This tool is very useful to my study.

As the title says, I wonder the UCell scoring can be used to assign cell-cycle phase with cell-cycle signature genes. The cell-cycle scoring of Seurat is sensitive to the scaling method and the randomized feature sets (background).

The UCell scoring method could be more tolerant of these issues. Do you have any sense about the scoring of the cell-cycle phase with UCell? Thank you.

Best, Bohyeon

mass-a commented 1 year ago

Hello Bohyeon,

yes I think UCell would work well for evaluating cell cycling signatures. Here is an example on a public dataset:

library(scRNAseq)
library(Seurat)
library(UCell)

data <- ZilionisLungData()

#focus on Tcells
labels <- data$`Major cell type`
data <- data[, !is.na(labels) & labels == "tT cells"]
exp <- Matrix::Matrix(counts(data),sparse = TRUE)
data <- CreateSeuratObject(counts = exp)

data <- data |> NormalizeData() |> ScaleData() |> 
  FindVariableFeatures(nfeatures=500) |> RunPCA(npcs=20) |> RunUMAP(dims=1:20)

Get cell cycling signatures (here using signatures from Tirosh et al. Science (2016)):

remotes::install_github("carmonalab/SignatuR")
library(SignatuR)

g1s <- GetSignature(SignatuR$Hs$Programs$cellCycle.G1S)
g2m <- GetSignature(SignatuR$Hs$Programs$cellCycle.G2M)

Score signatures using UCell:

data <- AddModuleScore_UCell(data, features=list("G1S"=g1s, "G2M"=g2m))

FeaturePlot(data, features=c("G1S_UCell","G2M_UCell")) &
  scale_color_viridis(discrete = FALSE, option="A", direction = -1)

cycling_UCell

It is perhaps not obvious to decide on a 'threshold' to discretize the scores to a cycling/non-cycling classification. But at least the scores should behave consistently across datasets, and are not influenced by the background expression level of cell cycling genes.

I hope this helps, -m

bhyu0217 commented 1 year ago

Hi @mass-a ,

That's awesome; it's conducive to me!!! Thank you very much.

Bohyeon