Tutorials#

Each tutorial is a notebook that runs top to bottom on a public dataset from liana.ds.

Where to start#

The tree below goes from the kind of data you have to the methods that apply to it. Click a node to open its tutorial.

        flowchart TD
    Start{What is your data?}

    %% ===== Spatially-resolved =====
    Start -->|Spatially-resolved| Res{Resolution?}
    Res -->|Single-cell| ScType{Analysis type?}
    ScType -->|Interaction scoring| Inflow[Inflow Score]
    ScType -->|Interaction scoring| ScConstr[Standard LR methods<br/>spatially-constrained]
    ScType -->|Spatial co-occurrence| LRIC[LRIC]
    ScType -->|Unsupervised| InflowMofa[Communication Programs<br/>Inflow + MOFA-Flex]
    Res -->|Spot-based| SpType{Analysis type?}
    SpType -->|Bivariate| LocalQ{Local<br/>interactions?}
    LocalQ -->|Yes| Local[Local Bivariate Metrics]
    LocalQ -->|No| Global[Global Bivariate Metrics]
    SpType -->|Unsupervised| MISTy[Multi-view Learning<br/>MISTy]

    %% ===== Dissociated single-cell =====
    Start -->|Dissociated single-cell| Compare{Compare across<br/>samples?}
    Compare -->|No| Steady[Steady-state LR Inference]
    Compare -->|Yes| Contrast{Specific<br/>contrast?}
    Contrast -->|Yes| Targeted[Targeted Differential]
    Contrast -->|Yes| CrossTalk[pyCrossTalkeR<br/>network differential]
    Contrast -->|No| MOFA[MOFA+]
    Contrast -->|No| Tensor[Tensor-cell2cell]
    Tensor --> TensorExt[Extended Tutorials<br/>ccc-protocols]
    Tensor --> TensorMet[CCC Patterns: protein + metabolite<br/>Tensor-cell2cell CTCA]

    %% ===== Multi-modal =====
    Start -->|Multi-modal| ModalSp{Spatial?}
    ModalSp -->|Yes| SMA[Multi-Modal Spatial]
    ModalSp -->|No| SCMulti[Multi-Modal Single-Cell]
    SCMulti --> Metab[Metabolite-mediated CCC]

    %% ===== Styling =====
    classDef decision fill:#f6f0f1,stroke:#364159,stroke-width:1px,color:#364159;
    classDef spatial fill:#e0fbf8,stroke:#00786e,color:#05564f;
    classDef dissoc fill:#fdeef4,stroke:#ba1b57,color:#7c1039;
    classDef multimodal fill:#e9ecf3,stroke:#4a587a,color:#2a3348;
    classDef external fill:#ffffff,stroke:#9e9e9e,stroke-dasharray:5 3,color:#424242;

    class Start,Res,ScType,SpType,LocalQ,Compare,Contrast,ModalSp decision;
    class Inflow,LRIC,ScConstr,InflowMofa,Local,Global,MISTy spatial;
    class Steady,Targeted,CrossTalk,MOFA,Tensor dissoc;
    class SMA,SCMulti,Metab multimodal;
    class TensorExt,TensorMet external;

    %% ===== Links (click events) =====
    click Inflow "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/inflow_score.html"
    click LRIC "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/LRIC_tutorial.html"
    click InflowMofa "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/inflow_mofaflex.html"
    click ScConstr "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/inflow_score.html"
    click Local "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/bivariate.html"
    click Global "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/bivariate.html"
    click MISTy "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/misty.html"
    click Steady "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/basic_usage.html"
    click Targeted "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/targeted.html"
    click CrossTalk "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/liana_pyCrossTalkeR.html"
    click MOFA "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/mofatalk.html"
    click Tensor "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/liana_c2c.html"
    click TensorExt "https://ccc-protocols.readthedocs.io/en/latest/"
    click TensorMet "https://earmingol.github.io/cell2cell/tutorials/Version2/Tensor-cell2cell-CTCA-LIANA/"
    click SMA "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/sma.html"
    click SCMulti "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/sc_multi.html"
    click Metab "https://liana-py.readthedocs.io/en/latest/tutorials/notebooks/sc_multi.html#metabolite-mediated-ccc-from-transcriptomics-data"
    

The tree is a guide rather than an exhaustive map, since the methods are modular and can be combined across data types and questions.

Getting started#

How a method is called, and where the prior knowledge it scores comes from.

Dissociated single-cell data#

Inference in one sample, and across samples or conditions.

Spatially-resolved data#

Interactions restricted to, or modelled from, spatial coordinates.

Multi-modal data#

Interactions between modalities, such as transcriptome and surface protein, or transcriptome and metabolite.