#!/usr/bin/env python # coding: utf-8 # # Minimal network for basophil lineage commitment # Early studies reported that basophils are derived from GMPs (Iwasaki et al., 2006; Truong and Ben-David, 2000). Our HSC dataset, however, suggests that they mostly originated from MEP-like cells (with a minor route from GMP-like cells), in line with recent scRNA-seq studies (Drissen et al., 2016; Pellin et al., 2019). To reconcile the discrepancy of two alternative trajectories of the Bas lineage, we derive a minimal network model of its commitment. # # In this tutorial, we will reveal a regulatory network governing the Bas lineage's dual origins. # Import relevant packages # In[2]: get_ipython().run_cell_magic('capture', '', 'import numpy as np\nimport pandas as pd\nimport matplotlib.pyplot as plt\n\n# import Scribe as sb\nimport sys\nimport os\n\n# import scanpy as sc\nimport dynamo as dyn\nimport seaborn as sns\n\ndyn.dynamo_logger.main_silence()\n') # In[3]: adata_labeling = dyn.sample_data.hematopoiesis() # ## Regulatory network governing the Bas lineage’s dual origins # # Switch pair ranking analyses prioritized the involvement of CEBPA and RUNX1, previously reported in (Guo et al., 2017), as well as GATA1, the master regulator of the GMP lineage. Subsequent Jacobian analyses indicate repression of RUNX1 and GATA2 by CEBPA, as well as mutual activation between RUNX1 and GATA2 and their self-activation in progenitors. # # In this section, we will show # # - GATA2 has high expression in the Bas lineage # - CEBPA represses RUNX1 and GATA2 # - A minimal network governing GMP vs. Bas origin of Bas lineage # GATA2 has high expression in the Bas lineage # In[8]: dyn.pl.scatters(adata_labeling, color=["GATA2", "cell_type"]) # Next, we will calculate jacobian via `dyn.vf.jacobian`. It shows that CEBPA represses RUNX1 and GATA2. # In[6]: selected_genes = ["GATA2", "CEBPA", "RUNX1"] dyn.vf.jacobian(adata_labeling, regulators=selected_genes, effectors=selected_genes) dyn.pl.jacobian( adata_labeling, regulators="CEBPA", effectors=["RUNX1", "GATA2"], basis="umap" ) # In[7]: dyn.pl.jacobian( adata_labeling, effectors=["RUNX1", "GATA2"], basis="umap" ) # Jacobian analyses confirm the known repression from GATA1 to GATA2, activation from GATA2 back to GATA1, # In[11]: dyn.vf.jacobian( adata_labeling, effectors=["GATA1", "GATA2"], ) dyn.pl.jacobian( adata_labeling, effectors=["GATA1", "GATA2"], basis="umap" ) # ### A minimal network governing GMP vs. Bas origin of Bas lineage # For the network of KLF1 and FLI1 (MEP on the right in the schematic below), please refer to dynamo paper or our tutorial *Molecular mechnism of earliest and fastest appearance of megakaryocytes*. # Collectively, analyses above reveal a network comprises the repression from key regulators of both GMP lineage and MEP lineage (CEBPA and GATA1 respectively) to the basophil master regulators GATA2 and RUNX1, suggesting that Bas lineage can arise via two potential trajectories, from either GMP or MEP cells, consistent with (Drissen et al., 2019). # ![fig5_g_iv](images/fig5_g_iv.png)