Home

Awesome

SINGE supplemental information

DOI

This repository contains supplemental scripts and analyses for the SINGE manuscript:

Network inference with Granger causality ensembles on single-cell transcriptomics.
Atul Deshpande, Li-Fang Chu, Ron Stewart, Anthony Gitter.
Cell Reports, 38:6, 2022.

See the main SINGE repository for the software.

Contents

Usage documentation of SINGE and other network inference methods

For network inference from the different methods, we use the following commands. See the scripts directory for related scripts.

SINGE

For all datasets in the paper, we first run all GLG tests for each target using

bash SINGE.sh PATH_TO_RUNTIME GLG DATA_FILE GENELIST_FILE OUTPUT_FOLDER default_hyperparameters.txt HYPENUM

Inputs

Outputs

Each GLG Test gives an output adjacency matrix A(HYPENUM) representing a partially inferred network saved in the OUTPUT_FOLDER.

This is followed by an aggregation of all GLG Test results using

bash SINGE.sh PATH_TO_RUNTIME Aggregate DATA_FILE GENELIST_FILE OUTPUT_FOLDER

Inputs

Outputs (saved in the OUTPUT_FOLDER)

SINCERITIES

The SINCERITIES MATLAB version 1.0 package is available at http://www.cabsel.ethz.ch/tools/sincerities.html, and we directly use its graphical user interface (MAIN.m) with default settings for each dataset.

SCODE

We downloaded SCODE from the GitHub repository https://github.com/hmatsu1226/SCODE (git commit 28acad67893c0fba7eeee670c339809d45ae6377) and used the command and settings listed below

ruby run_R.rb <Input_file1> <Input_file2> <Output_dir> <G> <D> <C> <I> <R>

Inputs

Output

Jump3

We parallelize the Jump3 implementation to speed up the processing time using high-throughput computing. An equivalent version of the Jump3 code we used can be obtained from https://github.com/vahuynh/Jump3 (git commit 03a7e86d82f2383c56fd11c658dfce574fbf1a1a). Because Jump3 did not terminate in a reasonable amount of time on the full Retinoic Acid-driven Differentiation dataset, we reduced the dataset by arbitrarily dropping cells with probability 0.5. We use only the ordering information in Jump3 with the assigned obsTimes increasing from 0 to C-1 from the earliest cell to the latest cell, where C is the number of cells in the dataset.

w = jump3(data,obsTimes,noiseVar,tfidx,K,ntrees)

We used noiseVar.obsnoise=0.1, K = 100, ntrees = 100, and replicate the default values from Jump3's example in its GitHub repository for the other variables.

GENIE3

We installed GENIE3 version 1.6.0 from the BioConductor page https://bioconductor.org/packages/release/bioc/html/GENIE3.html and used its default operating mode without any modifications.