ventolab / CellphoneDB

CellPhoneDB can be used to search for a particular ligand/receptor, or interrogate your own HUMAN single-cell transcriptomics data.
https://www.cellphonedb.org/
MIT License
320 stars 51 forks source link

Cell expression thresholds #150

Open jamesl-g opened 11 months ago

jamesl-g commented 11 months ago

Hello, many thanks for all your efforts in developing CellphoneDB!

I was hoping you could help me understand the situation below. From your publication (Efremova et al., 2020), it states that an interaction score between two cell-types is calculated by taking, for a certain cell-type, the percentage of cells expressing a gene and the mean gene expression. I have used the “threshold” argument in the method-2 (statistical analysis) to limit the minimum number of cells in a cell-type expressing a gene to be at least 10% (threshold = 0.1).

However, as you can see in the figure below, the interaction between endothelial cells and endocrine cells for LigandA and ReceptorA (not a complex) is scored as a very significant interaction, despite the endocrine cells only having 1 cell (out of 130 cells) expressing the ReceptorA gene, which would not meet the 10% threshold. I can only conclude that your threshold combines both cell-types (endothelial and endocrine) when calculating whether this threshold has been surpassed (combined cell threshold of endothelial cells expressing the ligand, or endocrine the receptor, is ~18%)? But this does not seem to match the wording in your documentation: “threshold percentage of the cells in the specific cluster”.

Many thanks in advance for any advice you can provide around this!

python 3.10.8 cellphonedb 4.0.0

image

datasome commented 11 months ago

Hi jamesl-g,

Thank you for using CellphoneDb and for your question. As far as I can see in the code the documentation is correct stating: “threshold percentage of the cells in the specific cluster” and we've never had this kind of feedback before. There must be something else at play here - it's as if the threshold has not been applied in the analysis. It's hard for me to guess what happened without having access to the data - if you like, you could send to contact@cellphonedb.org access details to the data and the exact command you used to perform the analysis and I could try see what I could find out here? Btw, I'm going to be away for a few days but will get to it as soon as I get back.

Best,

Robert.