xuranw / MuSiC

Multi-subject Single Cell Deconvolution
https://github.com/xuranw/MuSiC
GNU General Public License v3.0
220 stars 83 forks source link

Too few common genes! #120

Open hasanalanya opened 1 year ago

hasanalanya commented 1 year ago

Hi there,

I am trying to use MuSiC method but keep getting "Too few common genes!" error. I would appreciate if someone can help me to figure it out.

> bulk.matrix <- as.matrix(read.table(...)

> bulk.eset <- Biobase::ExpressionSet(assayData = bulk.matrix)

> # load the single cell study
> exprs.edited <- read.csv(...)

> pData <- read.csv("...) header = TRUE, sep = ",")

> i <- which(colnames(exprs.edited) %in% pData$X)
> subsetexpr <- exprs.edited[,i]
> m <- match(pData$X, colnames(subsetexpr))
> subsetexpr <- na.omit (subsetexpr)
> rownames(subsetexpr) <- make.names(exprs.edited[,1], unique = TRUE)
> rownames(subsetexpr) <- exprs.edited[,1]  
> subsetexpr <- na.omit (subsetexpr)
> subsetexpr <- exprs.edited[,i]
> subsetexpr <- na.omit (subsetexpr)
> dim (subsetexpr)
> rownames(subsetexpr) <- make.names(exprs.edited[,1], unique = TRUE)
> subsetexpr_mtx <-as.matrix(subsetexpr[,m])

> sce <- SingleCellExperiment(assays = list(counts = subsetexpr_sc), colData=DataFrame(label=pData))
> metadata <- data.frame(labelDescription=c('cell id', 'number of genes', 'number of UMI', 'origin identity', 'percent mito', 'cell type', 'clusters'))

> phenoData <- AnnotatedDataFrame(data=pData, 
+                                 varMetadata=metadata,)
> 
> rownames(phenoData)<-phenoData@data$X 
> 

> identical(rownames(phenoData),colnames(subsetexpr_sc))
[1] TRUE
> 
> assemb.expSet <- ExpressionSet(assayData=subsetexpr_sc, 
+                                phenoData=phenoData)
> 

> bulk.eset <- new("ExpressionSet", exprs=as.matrix(bulk.eset))
> bulk <- exprs(bulk.eset)
> Est.prop = music_prop(bulk.mtx = bulk, sc.sce = sce, clusters = 'label.cell_type', samples = 'label.X', select.ct = NULL, verbose =  F)
Error in music_prop(bulk.mtx = bulk, sc.sce = sce, clusters = "label.cell_type",  : 
  **Too few common genes!**
hasanalanya commented 1 year ago

@xuranw