Skip to content

Commit

Permalink
boxes for mechanisms and multimodal integration
Browse files Browse the repository at this point in the history
  • Loading branch information
Luis committed Feb 19, 2025
1 parent 9e9ebe3 commit ef379dd
Show file tree
Hide file tree
Showing 4 changed files with 113 additions and 87 deletions.
40 changes: 28 additions & 12 deletions jupyter-book/mechanisms/cell_cell_communication.ipynb
Original file line number Diff line number Diff line change
@@ -1,12 +1,36 @@
{
"cells": [
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"(cell-cell)=\n",
"# Cell-cell communication"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"``````{admonition} How do I set up an environment with the yml file used in this chapter?\n",
":class: dropdown\n",
"```{dropdown} <i class=\"fas fa-brain\"></i>&nbsp;&nbsp;&nbsp;Key takeaways\n",
"\n",
":::{card}\n",
":link: mechanisms-cell-cell-communication-key-takeaway-2\n",
":link-type: ref\n",
"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.\n",
":::\n",
"\n",
":::{card}\n",
":link: mechanisms-cell-cell-communication-key-takeaway-1\n",
":link-type: ref\n",
"Ligand-receptor inference methods and intracellular signaling models (e.g., NicheNet) are complementary approaches for understanding CCC.\n",
":::\n",
"\n",
"\n",
"```\n",
"\n",
"``````{dropdown} <i class=\"fa-solid fa-gear\"></i>&nbsp;&nbsp;&nbsp;Environment setup\n",
"`````{tab-set}\n",
" \n",
"````{tab-item} Steps\n",
Expand All @@ -21,19 +45,9 @@
"````\n",
"\n",
"`````\n",
"\n",
"``````"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"(cell-cell)=\n",
"# Cell-cell communication"
]
},
{
"cell_type": "markdown",
"metadata": {},
Expand Down Expand Up @@ -63,6 +77,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"(mechanisms-cell-cell-communication-key-takeaway-1)=\n",
"## Approaches"
]
},
Expand Down Expand Up @@ -1187,6 +1202,7 @@
"tags": []
},
"source": [
"(mechanisms-cell-cell-communication-key-takeaway-2)=\n",
"### Modelling differential intercellular signalling with NicheNet"
]
},
Expand Down
79 changes: 30 additions & 49 deletions jupyter-book/mechanisms/gene_regulatory_networks.ipynb
Original file line number Diff line number Diff line change
@@ -1,13 +1,36 @@
{
"cells": [
{
"attachments": {},
"cell_type": "markdown",
"id": "66941acf",
"id": "d943e4b0",
"metadata": {},
"source": [
"``````{admonition} How do I set up an environment with the yml file used in this chapter?\n",
":class: dropdown\n",
"# Gene regulatory networks"
]
},
{
"cell_type": "markdown",
"id": "a55c86c3",
"metadata": {},
"source": [
"```{dropdown} <i class=\"fas fa-brain\"></i>&nbsp;&nbsp;&nbsp;Key takeaways\n",
"\n",
":::{card}\n",
":link: mechanisms-gene-regulatory-networks-key-takeaway-1\n",
":link-type: ref\n",
"Setup a basic pipeline to prepare, execute, and verify SCENIC results using the NeurIPs 2021 dataset.\n",
":::\n",
"\n",
":::{card}\n",
":link: mechanisms-gene-regulatory-networks-key-takeaway-2\n",
":link-type: ref\n",
"Detected TF-regulons that allow to explain the observed transcriptomes by the regulatory potential of a handful of TFs.\n",
":::\n",
"\n",
"```\n",
"\n",
"``````{dropdown} <i class=\"fa-solid fa-gear\"></i>&nbsp;&nbsp;&nbsp;Environment setup\n",
"`````{tab-set}\n",
" \n",
"````{tab-item} Steps\n",
Expand All @@ -22,19 +45,9 @@
"````\n",
"\n",
"`````\n",
"\n",
"``````"
]
},
{
"attachments": {},
"cell_type": "markdown",
"id": "d943e4b0",
"metadata": {},
"source": [
"# Gene regulatory networks"
]
},
{
"attachments": {},
"cell_type": "markdown",
Expand All @@ -56,6 +69,7 @@
"\n",
"The purpose of this chapter is to showcase the general pipeline of how a GRN can be generated, using methods that have been to our knowledge presented in a way that allows a validation with a low amount of software dependencies. Due to the benchmarking limitations of GRN tools in general, we recommend these tools but we cannot say that they will perform best in all possible scenarios. We would rather recommend those as a starting point, given available data, to then explore their generated GRN representations with the lowest computational effort.\n",
"\n",
"(mechanisms-gene-regulatory-networks-key-takeaway-2)=\n",
"### Gathering TF regulons from public data\n",
"\n",
"TF- Regulons have been annotated in academic studies, databases that compiled those, and also consortia efforts such as ENCODE. As general recommendations, one can inspect [TTRUST](https://www.grnpedia.org/trrust/) {cite}`grn:Han2015-yb`, [DoRothEA](https://saezlab.github.io/dorothea/) {cite}`grn:Garcia-Alonso2019-ly`, [KnockTF](http://www.licpathway.net/KnockTFv2/index.php) {cite}`grn:Feng2020-nl`, among others, for eukaryotic TF-regulons. For prokaryotes [RegulonDB](https://regulondb.ccg.unam.mx/) {cite}`grn:Santos-Zavaleta2018-be` is a known and recognized database.\n",
Expand All @@ -64,6 +78,7 @@
"\n",
"The source and confidence of a TF-regulon have some limitations, such as data source and experimental readout. If the data source for a regulon is not matched to the cell type of interest, then results can not be put into the context of the particular biological system. Alternatively, if the experimental readout is not measuring *cis* regulation events, directly provoked by the TF of interest, our TF-regulon might contain *trans* regulation events. The usage of a TF regulon gathered in an equivalent biological system is strongly recommended. However, if those are not available the interpretation of results might be biased due to the forcing of priors.\n",
"\n",
"(mechanisms-gene-regulatory-networks-key-takeaway-1)=\n",
"### Generation of GRNs using RNA data\n",
"\n",
"We will explore scRNA-seq data and predicted TF-regulons, using the tool SCENIC. Specifically, we will execute SCENIC {cite}`grn:Aibar2017-tp` on a donor of the NeurIPS 2021 dataset, and we will interpret the results. The main processing steps described in this notebook are adapted based on SCENIC's core tutorials [Tutorial](https://github.com/aertslab/SCENICprotocol/blob/master/notebooks/PBMC10k_SCENIC-protocol-CLI.ipynb)\n",
Expand Down Expand Up @@ -1562,42 +1577,8 @@
},
{
"cell_type": "markdown",
"id": "99edd535",
"metadata": {
"id": "99edd535",
"pycharm": {
"name": "#%% md\n"
}
},
"source": [
"## Takeaways"
]
},
{
"cell_type": "markdown",
"id": "9d9347ab",
"metadata": {
"id": "9d9347ab",
"pycharm": {
"name": "#%% md\n"
}
},
"source": [
"In this notebook, we have:\n",
"\n",
"1. Setup a basic pipeline to prepare, execute, and verify SCENIC results using the NeurIPs 2021 dataset.\n",
"2. Detected TF-regulons that allow to explain the observed transcriptomes by the regulatory potential of a handful of TFs.\n"
]
},
{
"cell_type": "markdown",
"id": "0968692b",
"metadata": {
"id": "0968692b",
"pycharm": {
"name": "#%% md\n"
}
},
"id": "7f8e5126",
"metadata": {},
"source": [
"## Quiz\n",
"\n",
Expand Down
41 changes: 28 additions & 13 deletions jupyter-book/multimodal_integration/advanced_integration.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,35 @@
"cells": [
{
"cell_type": "markdown",
"id": "66eff76d",
"id": "4d429ca5",
"metadata": {},
"source": [
"(multimodal-integration:advanced-integration)=\n",
"# Advanced integration"
]
},
{
"cell_type": "markdown",
"id": "cd5363fb",
"metadata": {},
"source": [
"``````{admonition} How do I set up an environment with the yml file used in this chapter?\n",
":class: dropdown\n",
"```{dropdown} <i class=\"fas fa-brain\"></i>&nbsp;&nbsp;&nbsp;Key takeaways\n",
"\n",
":::{card}\n",
":link: multimodal-integration-advanced-integration-key-takeaway-1\n",
":link-type: ref\n",
"Advanced multimodal integration techniques techniques are particularly useful when data from different modalities (e.g., RNA-seq, ATAC-seq, and ADT) originate from separate experiments and are not jointly measured per cell.\n",
":::\n",
"\n",
":::{card}\n",
":link: multimodal-integration-advanced-integration-key-takeaway-2\n",
":link-type: ref\n",
"Query-to-reference mapping allows for the integration of new data into a pre-existing reference framework, enabling tasks like cell type prediction and imputation of missing modalities (e.g., predicting protein abundance from RNA-seq data)\n",
":::\n",
"\n",
"```\n",
"\n",
"``````{dropdown} <i class=\"fa-solid fa-gear\"></i>&nbsp;&nbsp;&nbsp;Environment setup\n",
"`````{tab-set}\n",
" \n",
"````{tab-item} Steps\n",
Expand All @@ -22,24 +45,15 @@
"````\n",
"\n",
"`````\n",
"\n",
"``````"
]
},
{
"cell_type": "markdown",
"id": "4d429ca5",
"metadata": {},
"source": [
"(multimodal-integration:advanced-integration)=\n",
"# Advanced integration"
]
},
{
"cell_type": "markdown",
"id": "f2de172c",
"metadata": {},
"source": [
"(multimodal-integration-advanced-integration-key-takeaway-1)=\n",
"## Motivation\n",
"\n",
"In this notebook, we showcase more advanced methods and techniques for multimodal integration. Examples of such advanced techniques are unpaired integration, integration of partially overlapping data or multimodal query-to-reference mapping. These are especially useful when the measurements of various modalities were not done jointly per cell, but originate from different experiments. \n",
Expand Down Expand Up @@ -1068,6 +1082,7 @@
"metadata": {},
"source": [
"<a id='totalvi'></a>\n",
"(multimodal-integration-advanced-integration-key-takeaway-2)=\n",
"## Integration with partially overlapping data and query-to-reference mapping with totalVI\n",
"\n",
"Another multimodal data integration scenario is when we have paired and unpaired data available at the same time, for instance, a CITE-seq and an RNA-seq datasets. This scenario is also known as mosaic integration. We might be interested in mapping the datasets into a shared latent space to make use of all the data available to us. Another use case would be to impute missing modalities (i.e. proteins abundance for RNA-seq dataset). We show how to perform these two tasks, partially overlapping integration and imputation, using totalVI {cite}`pi:gayoso2021`.\n",
Expand Down
40 changes: 27 additions & 13 deletions jupyter-book/multimodal_integration/paired_integration.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,33 @@
"cells": [
{
"cell_type": "markdown",
"id": "49df765f",
"id": "c7e65482",
"metadata": {},
"source": [
"``````{admonition} How do I set up an environment with the yml file used in this chapter?\n",
":class: dropdown\n",
"# Paired integration"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"```{dropdown} <i class=\"fas fa-brain\"></i>&nbsp;&nbsp;&nbsp;Key takeaways\n",
"\n",
":::{card}\n",
":link: multimodal-integration-paired-integration-key-takeaway-1\n",
":link-type: ref\n",
"The integration of single-cell multi-modal data (e.g., gene expression and chromatin accessibility) is challenging due to differences in dimensionality and data distributions across modalities, but tools like MOFA+, WNN, totalVI, and multiVI aim to address these challenges.\n",
":::\n",
"\n",
":::{card}\n",
":link: multimodal-integration-paired-integration-key-takeaway-2\n",
":link-type: ref\n",
"Query-to-reference mapping allows for the integration of new data into a pre-existing reference framework, enabling tasks like cell type prediction and imputation of missing modalities (e.g., predicting protein abundance from RNA-seq data)\n",
":::\n",
"\n",
"```\n",
"\n",
"``````{dropdown} <i class=\"fa-solid fa-gear\"></i>&nbsp;&nbsp;&nbsp;Environment setup\n",
"`````{tab-set}\n",
" \n",
"````{tab-item} Steps\n",
Expand All @@ -16,29 +37,21 @@
"````\n",
"\n",
"````{tab-item} yml\n",
"```{literalinclude} paired_integration.yml\n",
"```{literalinclude} advanced_integration.yml\n",
":language: yaml\n",
"```\n",
"````\n",
"\n",
"`````\n",
"\n",
"``````"
]
},
{
"cell_type": "markdown",
"id": "c7e65482",
"metadata": {},
"source": [
"# Paired integration"
]
},
{
"cell_type": "markdown",
"id": "0d78e683",
"metadata": {},
"source": [
"(multimodal-integration-paired-integration-key-takeaway-1)=\n",
"## Motivation"
]
},
Expand Down Expand Up @@ -1904,6 +1917,7 @@
"id": "794f925a",
"metadata": {},
"source": [
"(multimodal-integration-paired-integration-key-takeaway-2)=\n",
"### scIB metrics evaluation"
]
},
Expand Down

0 comments on commit ef379dd

Please sign in to comment.