🧠 Key takeaways
Cell-cell communication (CCC) inference from single-cell transcriptomics data relies on the assumption that gene expression is a proxy for protein abundance and intercellular interactions.
Ligand-receptor inference methods and intracellular signaling models (e.g., NicheNet) are complementary approaches for understanding CCC.
The Ligand-receptor database and the measurements of different tools are key for the cell-cell communication inference
⚙️ Environment setup
Install conda:
Before creating the environment, ensure that conda is installed on your system.
Save the yml content:
Copy the content from the yml tab into a file named
environment.yml.
Create the environment:
Open a terminal or command prompt.
Run the following command:
conda env create -f environment.yml
Activate the environment:
After the environment is created, activate it using:
conda activate <environment_name>Replace
<environment_name>with the name specified in theenvironment.ymlfile. In the yml file it will look like this:name: <environment_name>
Verify the installation:
Check that the environment was created successfully by running:
conda env list
name: cellcell
channels:
- conda-forge
dependencies:
- python=3.14
- pip
- pip:
- git+https://github.com/scverse/liana.git@v2.0.0
- lamindb==2.10.0
🗄️ Get data and notebooks
This book uses lamindb to store, share, and load datasets and notebooks using the theislab/sc-best-practices instance. We acknowledge free hosting from Lamin Labs.
Install lamindb
Install the lamindb Python package:
pip install lamindbOptionally create a lamin account
Sign up and log in following the instructions
Verify your setup
Run the
lamin connectcommand:
import lamindb as ln ln.Artifact.connect("theislab/sc-best-practices").df()You should now see up to 100 of the stored datasets.
Accessing datasets (Artifacts)
Search for the datasets on the Artifacts page
Load an Artifact and the corresponding object:
import lamindb as ln af = ln.Artifact.connect("theislab/sc-best-practices").get( key="key_of_dataset", is_latest=True ) obj = af.load()The object is now accessible in memory and is ready for analysis. Adapt the
lamindb.Artifact.connect("theislab/sc-best-practices").get("SOMEIDXXXX")suffix to get respective versions.Accessing notebooks (Transforms)
Search for the notebook on the Transforms page
Load the notebook:
lamin load <notebook url>which will download the notebook to the current working directory. Analogously to
Artifacts, you can adapt the suffix ID to get older versions.
Motivation¶
Cell communication is a process by which cells react to stimuli from their environment and also from themselves. In multicellular organisms, the dynamic coordination of cells, also called cell-cell communication (CCC), is involved in many biological processes, such as apoptosis and cell migration, and is consequently essential in homeostasis and disease. CCC commonly focuses on protein-mediated interactions, most typically perceived as a secreted ligand binding to its corresponding plasma membrane receptor. However, this picture can be broadened to include secreted enzymes, extra-cellular matrix proteins, transporters, and interactions that require the physical contact between cells, such as cell-cell adhesion proteins and gap junctions Armingol et al., 2021. Cell communication is further not independent of other processes, but the contrary, as external stimuli commonly elicit a downstream response. In the case of CCC, this is typically perceived as the induction of canonical pathways and downstream transcription factors in the cells receiving the signal, or receiver cells. Ultimately these external stimuli alter the function of receiver cells, and this alteration is further propagated via the subsequent interaction of these cells with their microenvironment.
Traditionally, the study of CCC required specialized in-situ biochemical assays, such as proximity labelling proteomics, co-immunoprecipitation, and yeast two-hybrid screening Armingol et al., 2021. Yet, the rapid developments and dropping costs of transcriptomics data generation has enabled a paradigm shift away from focusing on which types of cells are present, but rather on the relationships between them Almet et al., 2021. As a consequence, CCC inference from single-cell data is now becoming a routine approach, capable of providing a system-level hypotheses of intercellular crosstalk in vivo.
Background¶
As a result of this increased interest, a number of computational tools for CCC inference from single-cell transcriptomics have emerged that can be classified as those that predict CCC interactions alone, commonly referred to as ligand-receptor inference methods (e.g. Efremova et al., 2020Jin et al., 2021Raredon et al., 2022Hou et al., 2020), and those that additionally estimate intracellular activities induced by CCC (e.g. Wang et al., 2019Browaeys et al., 2020Hu et al., 2021). Both categories of tools use gene expression information as a proxy of protein abundance, and typically require the clustering of cells into biologically-meaningful groups (See Annotation tutorial). These CCC tools infer intercellular crosstalk between pairs of cell groups, one group being the source and the other the receiver of a CCC event. CCC events are thus commonly represented as interactions between proteins, expressed by the source and receiver cell clusters.
The information about the interacting proteins is commonly extracted from prior knowledge resources. In the case of ligand-receptor methods, the interactions can also be represented by heteromeric protein complexes, as different subunit combinations can induce distinct responses and the inclusion of protein complex information has been shown to reduce false positive rates Efremova et al., 2020Jin et al., 2021Liu et al., 2022. Ligand-receptor databases vary considerably in total number of curated interactions, bias to species or tissue/process, functional classifications, multisubunit complex annotation, intracellular signaling events, and level of curation. In the current literature, comparisons of existing databases are available in previous reviews Dimitrov et al., 2022Cesaro et al., 2025. On the other hand, the approaches that model intracellular signalling also leverage the functional information in receiver cell types, and thus require additional information such as intracellular protein-protein interaction network and/or gene regulatory interactions.
Ligand-receptor inference methods usually represent predicted interactions as tuples (source, receiver, ligand, receptor, score), where the score quantifies the evidence supporting intercellular signalling. Methods differ in how these scores are computed, commonly integrating ligand and receptor expression through expression-based scoring, expression specificity, differential expression, or statistical testing. Consequently, scores may reflect the magnitude, specificity, or statistical support of a predicted interaction Armingol et al., 2024Cesaro et al., 2025.

Figure 1:Cell-Cell Communication Overview
Validation¶
Recent work has highlighted that the choice of method and/or resource leads to limited consensus in inferred predictions when using different tools Dimitrov et al., 2022Wang et al., 2022Liu et al., 2022, thus prompting caution when interpreting their output. However, validating CCC predictions remains challenging due to the lack of ground truth Armingol et al., 2021Almet et al., 2021, capable of capturing the complex and dynamic interplay between large numbers of cells and molecules.
In the absence of such a ground truth, the reliability of CCC predictions can be assessed through complementary sources of evidence, including (1) literature agreement, (2) experimental validation, (3) indirect validation, (4) in silico validation, and (5) robustness validation, as highlighted by Cesaro et al. Cesaro et al., 2025. For instance, independent evaluations have shown that CCC methods are fairly robust to the introduction of noise Dimitrov et al., 2022Wang et al., 2022Liu et al., 2022, and are largely concordant with alternative data modalities such as intracellular signalling and spatial information Dimitrov et al., 2022Liu et al., 2022. Promising methods for experimental and indirect validation, as reviewed by Armingol et al. Armingol et al., 2024 and Cesaro et al. Cesaro et al., 2025, include uLIPSTIC, subcellular-resolution spatial transcriptomics (e.g. MERFISH), droplet-based technologies (e.g. PIC-seq), and multiplexed protein imaging methods (e.g. CODEX).
Reviews and benchmarking¶
To deepen understanding of CCC research, several efforts offer timeprints of CCC development in recent years. Novel surveys, such as Armingol et al. Armingol et al., 2024, Cesaro et al. Cesaro et al., 2025 and Chen et al., Cheng et al., 2025, summarise and provide an outlook on contributions in CCC databases and methods. Several initiatives further support the exploration and evaluation of the field. Cesaro et al. Cesaro et al., 2025 introduced the CCC-Catalog, an open-source online repository that centralizes and disseminates information on available CCC tools and databases. Platforms, such as LIANA Dimitrov et al., 2022, have been developed and provide a framework for comparative analysis across multiple LR resources and CCC tools, offering a structured approach to manage input and output heterogeneity. Interestingly, another important initiative is the Open Problems platform Luecken et al., 2025, which provides a structured framework for evaluating CCC computational tools. It allows researchers to assess tool performance using metrics such as precision-recall AUC and odds ratios, as well as computational efficiency in terms of execution time and memory usage. Other benchmarking efforts provide rankings of CCC tools using quantitative metrics and, where available, ground truth data, evaluating aspects such as accuracy, robustness, and usability. Notably, the EISICC framework Luo et al., 2023 benchmarked 18 LR inference tools and 5 LR-target tools across 116 datasets, representing one of the most comprehensive studies to date.
Environment setup¶
In this chapter, we first provide an introduction and example to perhaps the most common and simplest CCC approaches, i.e. ligand-receptor inference with CellPhoneDB Efremova et al., 2020 and LIANA Dimitrov et al., 2022. Finally, we highlight the common assumptions and limitations of CCC inference from single-cell transcriptomics data as well as suggestions how to improve confidence in intercellular communication predictions. Note that here we generalize for the sake of simplicity, however, there are a plethora of different and newly emerging CCC approaches. We highlight some of those in the Overview section.
Although, the prioritized interactions by both CellPhoneDB and LIANA seem biologically-plausible and potentially relevant to the treatment, it is challenging to ascertain their relevance. In particular, the advantage of these methods to generate systems-level insights in a hypothesis-free manner happens to also be one of their major disadvantages. Specifically because ligand-receptor tools return all plausible ligand-receptor interactions for every pair of cell types, thus we end up with huge lists of interactions, and choosing targets for subsequent experimental validation can be challenging.
Thus, prior to experimental validation, we suggest that any potential interaction hypotheses should be supported with additional prior knowledge. This may include domain knowledge for the specific condition (e.g. cell types or receptors of interest), as well as orthogonal modalities, such as protein abundance, spatial co-localization, or downstream signalling. To this end, we also further refer the reader to the Gene set enrichment and pathway analysis and spatial CCC (to be added) chapters.
import lamindb as ln
import liana as li
import pandas as pd
import scanpy as sc
ln.connect("theislab/sc-best-practices")
ln.track("8YR6fz482TZ3")
sc.settings.set_figure_params(dpi=200, frameon=False)
sc.set_figure_params(dpi=200, facecolor="white")
sc.set_figure_params(figsize=(5, 5))→ connected lamindb: theislab/sc-best-practices
! connected in read-only mode, please use ln.DB("theislab/sc-best-practices") instead
! skipping track(), connected in read-only mode
Case study¶
As a simple example, we will look at ~25k PBMCs from 8 lupus patients, each before and after IFN-β stimulation Kang et al., 2018. Note that by focusing on PBMCs, for the purpose of this tutorial, we assume that coordinated events occur among them.
So, let’s first download the pre-processed data.
af = ln.Artifact.connect("theislab/sc-best-practices").get(
key="conditions/differential_gene_expression.h5ad", is_latest=True
)
adata = af.load()
adataAnnData object with n_obs × n_vars = 24673 × 15706
obs: 'nCount_RNA', 'nFeature_RNA', 'tsne1', 'tsne2', 'label', 'cluster', 'cell_type', 'replicate', 'nCount_SCT', 'nFeature_SCT', 'integrated_snn_res.0.4', 'seurat_clusters'
var: 'name'
obsm: 'X_pca', 'X_umap'
layers: None (.X)Apply basic quality control steps to remove any low quality cells and lowly expressed genes. We refer the user to the quality control chapter for more extensive QC steps.
sc.pp.filter_cells(adata, min_genes=200)
sc.pp.filter_genes(adata, min_cells=3)adata.layers["counts"] = adata.X.copy()
adata.obs = adata.obs.rename({"label": "condition", "replicate": "patient"}, axis=1)
adata.obs["sample"] = pd.Categorical(
adata.obs["condition"].astype("str") + "&" + adata.obs["patient"].astype("str")
)We will also normalize the data to ensure that the count depth is equalized for all cells, given that we need the gene expression values to be comparable across the cell types. We refer the user to the Normalization chapter for more information and alternative normalization approaches that might fit their data better.
sc.pp.normalize_total(adata)
sc.pp.log1p(adata)In this case study, we will assume that cell types such as B cells and CD4 T cells carry out a signal mediator role, while others, such as CD8 T cells and Natural Killer cells, are composed of the cells that carry out the response. In other words, we will treat B and CD4 T cells as the sources of CCC signalling, while the latter are the receivers of CCC stimuli. This is of course an oversimplification as signalling sources and receivers are expected to be dynamic and multi-directional, thus the cell types that we treat as which category depends on the hypothesis in mind.
adata.obs["cell_type"].cat.categoriesIndex(['CD4 T cells', 'CD14+ Monocytes', 'B cells', 'NK cells', 'CD8 T cells',
'FCGR3A+ Monocytes', 'Dendritic cells', 'Megakaryocytes'],
dtype='str')Show pre-computed UMAP, just to showcase the data
sc.pl.umap(adata, color=["condition", "cell_type"], frameon=False)
Ligand-receptor inference¶
First, let’s use the CellPhoneDB (v2) ligand-receptor method Efremova et al., 2020.
We will run CellPhoneDB on the data post IFN-beta stimulation alone, as such methods were initially designed for the inference of CCC events in “steady-state” data, or in other words, they are meant to be used not across samples or conditions, but rather on a single condition or sample at a time. Note that, nevertheless, certain approaches exist to apply ligand-receptor methods across conditions but these are out of scope for this tutorial, and instead we refer to them in the Outlook section.
adata_stim = adata[adata.obs["condition"] == "stim"].copy()
adata_stimAnnData object with n_obs × n_vars = 12301 × 15701
obs: 'nCount_RNA', 'nFeature_RNA', 'tsne1', 'tsne2', 'condition', 'cluster', 'cell_type', 'patient', 'nCount_SCT', 'nFeature_SCT', 'integrated_snn_res.0.4', 'seurat_clusters', 'n_genes', 'sample'
var: 'name', 'n_cells'
uns: 'log1p', 'condition_colors', 'cell_type_colors'
obsm: 'X_pca', 'X_umap'
layers: None (.X), 'counts'from liana.method import cellphonedbCellPhoneDB is one of the most commonly-used CCC tools, it represents intercellular communication events as the average gene expression of the proteins involved in the interaction. The proteins involved can also assemble as heteromeric complexes, and in that case the minimum gene expression of the subunits is considered. In addition to the expression average, interaction significance is determined against a null distribution, generated by shuffling the cell group labels.
Note that we are grouping by cell type and that the CCC statistics that we get will reflect the cell types that were previously pre-defined.
cellphonedb(
adata_stim, groupby="cell_type", use_raw=False, return_all_lrs=True, verbose=True
)Output
Using resource `consensus`.
Using `.X`!
0.46 of entities in the resource are missing from the data.
Generating ligand-receptor stats for 12301 samples and 891 features
100%|██████████| 1000/1000 [00:01<00:00, 668.09it/s]
By default, the results are written in place within the anndata object, more specifically in .uns['liana_res'].
Let’s examine the output from the CellPhoneDB method:
adata_stim.uns["liana_res"].head()Here, we see that stats are provided for both ligand and receptor entities, more specifically: - ligand and receptor are typically the two entities that interact. As a reminder, CCC events are not limited to secreted signalling, but we refer to them as ligand and receptor for simplicity.
Also, in the case of heteromeric complexes, the ligand and receptor columns represent the subunit with minimum expression, while *_complex corresponds to the actual complex, with subunits being separated by _.
sourceandtargetcolumns represent the source/sender and target/receiver cell identity for each interaction, respectively*_props: represents the proportion of cells that express the entity.By default, in CellPhoneDB and LIANA, any interactions in which either entity is not expressed in above 10% of cells per cell type is considered as a false positive, under the assumption that since CCC occurs between cell types, a sufficient proportion of cells within should express the genes.
*_means: entity expression mean per cell typelr_means: mean ligand-receptor expression, as a measure of ligand-receptor interaction magnitudecellphone_pvals: permutation-based p-values, as a measure of interaction specificity
Note that ligand, receptor, source, and target columns are returned by every ligand-receptor method, while the rest of the columns can vary across the ligand-receptor methods, as each method relies on different assumptions and scoring functions, and hence each returns different ligand-receptor scores.
Nevertheless, typically most methods use a pair of scoring functions - where one often corresponds to the magnitude (strength) of interaction and the other reflects the specificity of a given interaction to a pair of cell identities.
Visual exploration¶
We can now visualize the results that we just obtained as a dotplot, in which rows represent the prioritized interactions between source/sender (top) and target/receiver (bottom) cell types.
li.pl.dotplot(
adata=adata_stim,
colour="lr_means",
size="cellphone_pvals",
inverse_size=True,
source_labels=["CD4 T cells", "B cells", "FCGR3A+ Monocytes"],
target_labels=["CD8 T cells", "CD14+ Monocytes", "NK cells"],
filter_fn=lambda x: x["cellphone_pvals"] <= 0.01,
orderby="lr_means",
orderby_ascending=False,
top_n=20,
figure_size=(9, 5),
size_range=(1, 6),
)
Great, we get a number of interactions potentially linked to IFN-beta stimulation.
We can also see that both the magnitude (expression strength) and specificity of the interactions are cell-type dependent. For example, the potential binding of HLA-B binding to CD8A/B logically occurs only when the receiver cells are CD8 T cells.
Generating a Ligand-Receptor consensus with LIANA¶
Given the reported limited agreement between the interactions inferred by different ligand-receptor methods, as a way to further increase the confidence in a potential interaction of interest, one could check if this interaction is predicted as relevant by more than a single method. In the same manner, one could also use multiple methods and focus on their consensus, or in other words focus on interactions consistently predicted as relevant. To this end, we will run the rank_aggregate method of liana Dimitrov et al., 2022, which generates a probability distribution of highly ranked interactions across the methods.
Let’s first examine the ligand-receptor methods in LIANA:
li.method.show_methods()Let’s now run the Rank_Aggregate method, which will essentially run the other methods in the background and then generate a consensus.
from liana.method import rank_aggregaterank_aggregate(
adata_stim, groupby="cell_type", return_all_lrs=True, use_raw=False, verbose=True
)Output
Using resource `consensus`.
Using `.X`!
0.46 of entities in the resource are missing from the data.
Generating ligand-receptor stats for 12301 samples and 891 features
Assuming that counts were `natural` log-normalized!
Running CellPhoneDB
100%|██████████| 1000/1000 [00:01<00:00, 705.25it/s]
Running Connectome
Running log2FC
Running NATMI
Running SingleCellSignalR
Let’s now check how the output of liana’s rank_aggregate:
adata_stim.uns["liana_res"].drop_duplicates(
["ligand_complex", "receptor_complex"]
).head()Here, we can see the output of the scoring functions of all methods (refer to the table above, if interested to map which score belongs to which method).
More importantly, we also get the magnitude_rank and specificity_rank for each interaction, which represent the consensus interaction magnitude (strength of expression) and specificity (across all cell type pairs), respectively.
For example, going back to CellPhoneDB, lr_mean and cellphone_pvals will be correspondingly aggregated into those.
Let’s generate the same plot, but now using the aggregate of the methods:
li.pl.dotplot(
adata=adata_stim,
colour="magnitude_rank",
size="specificity_rank",
inverse_colour=True,
inverse_size=True,
source_labels=["CD4 T cells", "B cells", "FCGR3A+ Monocytes"],
target_labels=["CD8 T cells", "CD14+ Monocytes", "NK cells"],
filter_fn=lambda x: x["specificity_rank"] <= 0.05,
orderby="magnitude_rank",
orderby_ascending=True,
top_n=20,
figure_size=(9, 5),
size_range=(1, 6),
)
Overview¶
Assumptions & Limitations¶
Single-cell transcriptomics enables the inference of CCC events on an unprecedented scale. While the methods considered in this work predict the most relevant intercellular interactions between different cell types using single-cell transcriptomics data, some assumptions and limitations should be kept in mind. The first limitation is the assumption that protein co-expressions reflect intercellular interactions, and consequently they are also reflective of any events preceding the interaction, including protein translation and processing, secretion, and diffusion Armingol et al., 2021Dimitrov et al., 2022 (Figure 22.2). Second, if cell communication within an organism is conceptualized as the combination of CCC events that occur at different ‘length scales’ or ranges Palla et al., 2022, then the CCC events that can be inferred from single-cell transcriptomics are potentially limited to only the protein-mediated events that occur at ‘local’ ranges, i.e., between the cell types that were sampled. As a result, long-range signaling and CCC driven by other molecules, such as endocrine signaling and system gradients like Calcium and Oxygen concentrations, are likely not captured Dimitrov et al., 2022. Lastly, while grouping cell types by lineage is common practice to structure our data, when considering the tissue as the communication location, interactions do not necessarily occur between cell types but rather between individual cells Wilk et al., 2022. Intercellular interactions are commonly taken as one-to-one events between cell types and/or proteins. Therefore, the assumption that potential co-expression events across cell types might not necessarily reflect true signaling in order to fundamentally capture the events within a local community, one must identify the magnitude, directionality, and biological relevance of the messages passed between the cells within that community Armingol et al., 2021.
Summary & Outlook:¶
In this chapter we presented two applications of CCC inference methods, namely we used CellPhoneDB and LIANA to predict relevant ligand-receptor interactions from single-context (or steady-state) data and NicheNet to infer potentially active ligands and their targets in a differential-expression context. As the focus of the single-cell field moves further away from the definition of lineages, and into characterizing changes within cell types between conditions, approaches to disentangle CCC insights across contexts are becoming essential. Thus, in addition to NicheNet, we refer the user to other approaches that enable cross-condition comparisons, such as NATMI’s differential cell-connectivity analysis Hou et al., 2020, CrosstalkeR’s network topological measures Nagai et al., 2021, CellChat’s pathway-focused manifold learning Jin et al., 2021, as well as Tensor-cell2cell’s untargeted factorization approach to infer CCC patterns across contexts Armingol et al., 2022.
As a consequence of the ongoing developments within the single-cell and the cell-cell communication field specifically, there is an ever-growing number of methods, some of which propose alternative ways to predict CCC events, such as those that work at the single-cell resolution Raredon et al., 2023Wang et al., 2019Wilk et al., 2022. While others attempt to address some of the limitations above, e.g. by including the inference of interactions mediated by metabolites or small molecules Zheng et al., 2022Garcia-Alonso et al., 2022Zhang et al., 2021.
Albeit, this chapter does not capture the diversity and all current developments of the CCC field in dissociated single-cell data, it serves to introduce some of the general ideas and limitations. Thus, we intend it as a starting point upon which the reader can expand on by combining their knowledge from other chapters, and further reading within the CCC field itself.

FIGURE 22.2. Assumptions and Limitations of Cell-Cell Communication from single-cell transcriptomics data
Quiz¶
- Armingol, E., Officer, A., Harismendy, O., & Lewis, N. E. (2021). Deciphering cell-cell interactions and communication from gene expression. Nature Reviews. Genetics, 22(2), 71–88. 10.1038/s41576-020-00292-x
- Almet, A. A., Cang, Z., Jin, S., & Nie, Q. (2021). The landscape of cell-cell communication through single-cell transcriptomics. Current Opinion in Systems Biology, 26, 12–23. 10.1016/j.coisb.2021.03.007
- Efremova, M., Vento-Tormo, M., Teichmann, S. A., & Vento-Tormo, R. (2020). CellPhoneDB: inferring cell-cell communication from combined expression of multi-subunit ligand-receptor complexes. Nature Protocols, 15(4), 1484–1506. 10.1038/s41596-020-0292-x
- Jin, S., Guerrero-Juarez, C. F., Zhang, L., Chang, I., Ramos, R., Kuan, C.-H., Myung, P., Plikus, M. V., & Nie, Q. (2021). Inference and analysis of cell-cell communication using CellChat. Nature Communications, 12(1), 1088. 10.1038/s41467-021-21246-9
- Raredon, M. S. B., Yang, J., Garritano, J., Wang, M., Kushnir, D., Schupp, J. C., Adams, T. S., Greaney, A. M., Leiby, K. L., Kaminski, N., Kluger, Y., Levchenko, A., & Niklason, L. E. (2022). Computation and visualization of cell-cell signaling topologies in single-cell systems data using Connectome. Scientific Reports, 12(1), 4187. 10.1038/s41598-022-07959-x
- Hou, R., Denisenko, E., Ong, H. T., Ramilowski, J. A., & Forrest, A. R. (2020). Predicting cell-to-cell communication networks using NATMI. Nature Communications, 11(1), 1–11.
- Wang, S., Karikomi, M., MacLean, A. L., & Nie, Q. (2019). Cell lineage and communication network inference via optimization for single-cell transcriptomics. Nucleic Acids Research, 47(11), e66. 10.1093/nar/gkz204
- Browaeys, R., Saelens, W., & Saeys, Y. (2020). NicheNet: modeling intercellular communication by linking ligands to target genes. Nature Methods, 17(2), 159–162. 10.1038/s41592-019-0667-5
- Hu, Y., Peng, T., Gao, L., & Tan, K. (2021). CytoTalk: De novo construction of signal transduction networks using single-cell transcriptomic data. Science Advances, 7(16). 10.1126/sciadv.abf1356
- Liu, Z., Sun, D., & Wang, C. (2022). Evaluation of cell-cell interaction methods by integrating single-cell RNA sequencing data with spatial information. Genome Biology, 23(1), 218. 10.1186/s13059-022-02783-y
- Dimitrov, D., Türei, D., Garrido-Rodriguez, M., Burmedi, P. L., Nagai, J. S., Boys, C., Ramirez Flores, R. O., Kim, H., Szalai, B., Costa, I. G., Valdeolivas, A., Dugourd, A., & Saez-Rodriguez, J. (2022). Comparison of methods and resources for cell-cell communication inference from single-cell RNA-Seq data. Nature Communications, 13(1), 3224. 10.1038/s41467-022-30755-0
- Cesaro, G., Nagai, J. S., Gnoato, N., Chiodi, A., Tussardi, G., Klöker, V., Musumarra, C. V., Mosca, E., Costa, I. G., Di Camillo, B., & others. (2025). Advances and challenges in cell–cell communication inference: a comprehensive review of tools, resources, and future directions. Briefings in Bioinformatics, 26(3), bbaf280.
- Armingol, E., Baghdassarian, H. M., & Lewis, N. E. (2024). The diversification of methods for studying cell–cell interactions and communication. Nature Reviews Genetics, 25(6), 381–400.
- Wang, S., Zheng, H., Choi, J. S., Lee, J. K., Li, X., & Hu, H. (2022). A systematic evaluation of the computational tools for ligand-receptor-based cell-cell interaction inference. Briefings in Functional Genomics, 21(5), 339–356. 10.1093/bfgp/elac019
- Cheng, X., Huang, H., Su, Y., Nie, Q., Zou, X., & Jin, S. (2025). Cell-cell communication inference and analysis: biological mechanisms, computational approaches, and future opportunities. arXiv Preprint arXiv:2512.03497.