bnprks / BPCells

Scaling Single Cell Analysis to Millions of Cells
https://bnprks.github.io/BPCells
Other
166 stars 17 forks source link

findmarkers seurat and bpcells #122

Closed Flu09 closed 1 month ago

Flu09 commented 2 months ago

Hello,

I wanted to use t.test argument in findmarkers() in Seurat with something other than wilcoxin.

brain[["RNA"]]$counts <- as(object = brain[["RNA"]]$counts, Class = "dgCMatrix") brain[["RNA"]]$counts <- as(object = brain[["RNA"]]$counts, Class = "dgeMatrix")

Both still gave me the bpcells object only support wilcoxin, so I wonder if it is possible to use MAST.

bnprks commented 2 months ago

Hi @Flu09, this looks to me like you have basically the right idea but might have a small usage error interacting between BPCells and Seurat. As you've observed, BPCells currently only supports wilcoxon marker gene tests. (t tests are likely to come to BPCells in the next several weeks, but it may take a while beyond that for Seurat to utilize the upcoming functionality).

Your strategy of converting to a "dgCMatrix" in order to calculate the marker features is the right idea, but I'd guess that you are only converting the counts layer, whereas I think Seurat uses the data layer by default for calculating marker features.

I'd suggest running instead:

brain[["RNA"]]$data <- as(object = brain[["RNA"]]$data, Class = "dgCMatrix")

I don't think this is exactly a bug in either Seurat or BPCells, but hopefully you'll be able to get your use-case working with the approach above.

Flu09 commented 1 month ago

thank you