omnideconv / immunedeconv

A unified interface to immune deconvolution methods (CIBERSORT, EPIC, quanTIseq, TIMER, xCell, MCPcounter) and mouse deconvolution methods
https://omnideconv.org/immunedeconv/index.html
Other
454 stars 101 forks source link

Allow to specify custom signature(matrix) #15

Open grst opened 5 years ago

grst commented 5 years ago

It would be useful to be able to specify custom signature matrices.

Originally proposed by Sonja Hänzelmann via email and also mentioned as one of the "masked options" by @jracle85 in #14.

Problem:

Possible solution:

jracle85 commented 5 years ago

Hello,

Two other important things to keep in mind concerning if allowing for custom signatures:

So it's indeed not easy to reconcile everything in a unified framework (but the same list of marker genes can certainly be used in EPIC, MCP and xCell, so it'd make that you'd need to give the full reference profiles, the signature genes and possibly the reference profiles variability matrix).

Cheers,

Julien

FFinotello commented 5 years ago

Hi Julien,

I agree with your last comment! Another conceptual difference regards the usage of all signature genes or just a subset of them. CIBERSORT performs feature selection on the LM22 matrix, whereas methods like quanTIseq and EPIC, if run with the LM22 matrix, might obtain noisy results. Also, quanTIseq removes some genes from the TIL10 signature depending on the "---tumor" and "--arrays" options. This is not easily transferable to other signatures, for now.

Cheers, Francesca

LorenzoMerotto commented 2 years ago

I will take charge of this task.
Here is what I woudl like to implement:

When custom signatures will be used there is no distinction between human and mouse based methods Feel free to leave any suggestion!

EDIT: This is intended to be a preliminary plan. I will then check if the implementatio is easily feasible and does not require too complex data

LorenzoMerotto commented 2 years ago

Update: xCell technically allows for a set of user-specified signature genes, but they are quite difficult to prepare. It requires a GMT object with the genes, and a Spillover object for the correction of the sores. All these elements are required and I think they are difficult to deal with in the case of custom signatures. What I will do is that I will offer the possibility to use ConsensusTME with user-specified gene signatures. These can be provided as a list

signatures <- list( cell type 1 = c(...), cell type 2 = c(...), etc)

Then ConsensusTME will compute the scores with a GSEA approach