in-lineage icon indicating copy to clipboard operation
in-lineage copied to clipboard

Data and code for the paper "Developmental diversification of cortical inhibitory interneurons"

Data and code associated with the paper

Developmental diversification of cortical inhibitory interneurons

by Christian Mayer#, Christoph Hafemeister#, Rachel C. Bandler#, Robert Machold, Renata Batista Brito, Xavier Jaglin, Kathryn Allaway, Andrew Butler, Gord Fishell* and Rahul Satija*

# Equal contribution
* Corresponding authors

Nature, Advanced Online Publication 05 March 2018, doi:10.1038/nature25999

Free read-only version of the full published article through Springer Nature SharedIt

Preprint on bioRxiv

How to run

There are individual scripts for the different parts of the analysis. Run them in this order:

  1. Rscript R/maturation_trajectory.R
  2. Rscript R/mitotic_cells.R
  3. Rscript R/branch_analysis.R CGE
  4. Rscript R/branch_analysis.R LGE
  5. Rscript R/branch_analysis.R MGE
  6. Rscript R/map_10x_E14_to_branches.R
  7. Rscript R/variance_explained.R

Code related to the integrated analysis linking heterogenity in our data to heterogeneity in adult cells (Figure 4) is provided by Christian Mayer in his repository.

R/maturation_trajectory.R

this script performs the following steps:

  1. read in drop-seq digital expression and normalize using regularized NB regression
  2. cluster all cells and remove contaminating cell populations
  3. fit a maturation trajectory through the remaining cells
  4. identify maturation score cutoff to separate mitotic from post-mitotic cells
  5. visualize results
  6. create smooth expression (as function of maturation score) for visualization later on

these files are created in the results directory:

  • all_samples_normalized_expression.Rds
  • all_samples_maturation_trajectory_meta_data.Rds
  • all_samples_maturation_trajectory.pdf
  • all_samples_smooth_expression.Rds

running times on an Intel Xeon Processor E5-2697 v3 @ 2.6 to 3.6 GHz (using 6 cores for some of the steps)

  • steps 1-5: ca. 75 minutes
  • step 6: ca. 95 minutes

R/mitotic_cells.R

this script performs the following steps:

  1. run differential expression test of CGE vs MGE in early mitotic cells
  2. identify genes that are associated with maturation in all eminences and all mitotic cells

note that you need to run maturation_trajectory.R first

these files are created in results directory:

  • all_samples_differential_expression_early_mitotic_TFs_CGE_vs_MGE.csv
  • all_samples_temporal_mitotic_genes.pdf

running times on an Intel Xeon Processor E5-2697 v3 @ 2.6 to 3.6 GHz (using 6 cores for some of the steps)

  • ca. 6 minutes

R/branch_analysis.R

this script performs the following steps:

  1. load maturation trajectory results and keep only post-mitotic cells from one specific eminence (CGE by default, or first command line argument if present)
  2. re-normalize data and perform dimensionality reduction
  3. use bootstrapped minimum spanning trees to create new cell-to-cell distances
  4. use consensus tree to identify branches
  5. run differential expression tests between terminal branches to identify marker genes

these files are created in results directory (in the case of CGE):

  • all_samples_CGE_branch_analysis.pdf
  • all_samples_CGE_branch_analysis_meta_data.Rds
  • all_samples_CGE_branch_analysis_top_de_genes.pdf
  • all_samples_CGE_branch_analysis_top_marker_genes.csv
  • all_samples_CGE_branch_analysis_de_genes.Rds
  • all_samples_CGE_branch_analysis_expr_branch_avg.Rds

running times on an Intel Xeon Processor E5-2697 v3 @ 2.6 to 3.6 GHz (using 6 cores for some of the steps)

  • CGE: ca. 10 minutes
  • LGE: ca. 9 minutes
  • MGE: ca. 6 minutes

R/map_10x_E14_to_branches.R

this script performs the following steps:

  1. load 10x data and subset to E13.5 Lhx6neg (CGE)
  2. re-normalize data and run maturation trajectory analysis to isolate post-mitotic cells
  3. cluster cells and remove Lhx6 positive clusters (contamination)
  4. also load the 10x E13.5 Lhx6pos (MGE) cells
  5. map both set of cells to the branches identified in E13.5 dropseq data

Note that we use E13.5 and E14 to refer to these cells, but only the MGE cells are E13.5 and the CGE cells are actually E14.5.

these files are created in results directory:

  • CGE_E13.5_Lhx6neg_maturation_trajectory.pdf
  • CGE_E13.5_Lhx6neg_postmitotic_clusters_lhx6_detection_rate.pdf
  • CGE_E13.5_Lhx6neg_mapped.Rds
  • MGE_E13.5_Lhx6pos_mapped.Rds
  • CGE_E13.5_Lhx6neg_mapped_single_cell_heatmap.pdf
  • MGE_E13.5_Lhx6pos_mapped_single_cell_heatmap.pdf

running times on an Intel Xeon Processor E5-2697 v3 @ 2.6 to 3.6 GHz (using 6 cores for some of the steps)

  • ca. 33 minutes

R/variance_explained.R

this script performs the following steps:

  1. load mitotic cells from CGE and MGE dropseq experiments
  2. quantify variance explained by individual factors
  3. load E13.5 10x data and subset to postmitotic cells
  4. quantify variance explained by individual factors

these files are created in results directory:

  • variance_explained_dropseq_mitotic_CGE_MGE.pdf
  • variance_explained_10x_E13.5_CGE_MGE.pdf

running times on an Intel Xeon Processor E5-2697 v3 @ 2.6 to 3.6 GHz (using 6 cores for some of the steps)

  • ca. 40 minutes