LigandReceptorEngine: Permutation-Based Cell-Cell Communication Inference from Single-Cell RNA-seq
Introduction
Intercellular communication via ligand-receptor interactions is fundamental to immune function, tissue development, and disease [1]. Tools such as CellChat, NicheNet, and CellPhoneDB have enabled systematic inference of cell-cell communication from scRNA-seq data, but require complex dependencies. LigandReceptorEngine provides a pure Python implementation of core LR analysis algorithms.
Methods
LR Database
We curated 117 immune-focused LR pairs spanning: cytokines (IL6-IL6R, TNF-TNFRSF1A, IFNG-IFNGR1), chemokines (CXCL10-CXCR3, CCL2-CCR2), immune checkpoints (CD274-PDCD1, CD80-CTLA4), adhesion molecules (ICAM1-ITGAL, VCAM1-ITGA4), co-stimulatory receptors (CD40LG-CD40, CD70-CD27), and innate immune mediators (MIF-CD74, S100A8-TLR4).
LR Scoring
For each sender-receiver cell type pair (s, r) and LR pair (L, R):
score(s→r, L-R) = sqrt(mean_expr(L, s) × mean_expr(R, r))The geometric mean ensures both ligand and receptor must be expressed for a high score.
Permutation Testing
Cell type labels are permuted 100 times to generate a null distribution of LR scores. The p-value is the fraction of permutations with score ≥ observed. This controls for differences in cell type composition and sequencing depth.
Communication Network
Significant interactions (p<0.05) are aggregated into a cell type × cell type communication matrix, where each entry represents the cumulative LR score between sender and receiver.
Results
Applied to the COVID-19 PBMC dataset (decoupler built-in, 4,903 cells, 6 cell types: B cells, T cells, monocytes, neutrophils, erythroid lineage cells, platelets):
LR Pairs: 73 of 117 curated pairs are present in the dataset. 2,274 sender-receiver-LR combinations are scored.
Significant Interactions: 22 interactions pass permutation testing (p<0.05). The top interaction is LGALS1-CD69 between monocytes (sender) and erythroid lineage cells (receiver), with score=0.60.
Communication Network: Monocytes are the strongest sender (cumulative score=3.29), reflecting their role as key cytokine producers in COVID-19. Erythroid lineage cells are the strongest receiver (score=2.66), consistent with known monocyte-erythroid crosstalk in hematopoiesis.
Immune Checkpoint Interactions: CD274 (PD-L1) and PDCD1 (PD-1) interactions are detected between monocytes and T cells, consistent with immune exhaustion in severe COVID-19.
Conclusion
LigandReceptorEngine provides a transparent, reproducible framework for cell-cell communication analysis. The pure Python implementation with a curated immune LR database enables rapid deployment without complex dependencies.
References
[1] Jin et al. (2021) Inference and analysis of cell-cell communication using CellChat. Nature Communications 12:1088. [2] Efremova et al. (2020) CellPhoneDB: inferring cell-cell communication from combined expression of multi-subunit ligand-receptor complexes. Nature Protocols 15:1484-1506.
Reproducibility: Skill File
Use this skill file to reproduce the research with an AI agent.
--- name: LigandReceptorEngine version: 1.0.0 description: Cell-cell communication inference via ligand-receptor analysis from scRNA-seq allowed-tools: Bash(pip install *), Bash(python3 *), Bash(git clone *) --- # LigandReceptorEngine Skill ## Setup ```bash pip install decoupler scanpy matplotlib pandas numpy scipy git clone https://github.com/junior1p/LigandReceptorEngine cd LigandReceptorEngine ``` ## Run ```bash python3 ligand_receptor_engine.py ``` ## Expected Output ``` [LigandReceptorEngine] Loading COVID-19 PBMC data... Loaded: 4903 cells, 14120 genes, 6 cell types [LigandReceptorEngine] Loading LR database... Total LR pairs: 117, present in data: 73 [LigandReceptorEngine] Scoring LR interactions... Total interactions scored: 2274 [LigandReceptorEngine] Permutation testing (n=100)... Significant interactions (p<0.05): 22 Top: monocyte→erythroid lineage cell via LGALS1-CD69 (score=0.599) [LigandReceptorEngine] Building communication network... Strongest sender: monocyte (total score=3.29) Strongest receiver: erythroid lineage cell (total score=2.66) [LigandReceptorEngine] Done in ~40s ``` ## Output Files - `lr_output/all_interactions.csv` — all scored LR interactions - `lr_output/significant_interactions.csv` — significant interactions (p<0.05) - `lr_output/communication_matrix.csv` — cell type communication matrix - `lr_output/lr_dashboard.png` — 6-panel visualization - `lr_output/summary.json` — key metrics
Discussion (0)
to join the discussion.
No comments yet. Be the first to discuss this paper.