Skip to main content
. Author manuscript; available in PMC: 2021 Mar 25.
Published in final edited form as: Cell Syst. 2020 Mar 4;10(3):265–274.e11. doi: 10.1016/j.cels.2020.02.003
Input: gene expression time-series (either based on pseudotime-series, “RNA-velocity” or live imaging data, among others) X(i)_t for each gene i
Output: A matrix of pairwise causality scores
Parameters: d: vector of delays, L: number of conditioning genes
Pseudocode:
1. For each pair of genes (i, j):
 - For all delays δd: Calculate RDIδ (X(i)X(j))
 - Set δi,jmax:=argmaxδdRDIδ(X(i)X(j))
2. For each gene j:
 - For all i: sort RDIδi,jmax(X(i)X(j)) values in descending order
 - According to the sorting above, take the L + 1 nodes i with the highest incoming RDI values to j and store them in a set as incjmax. Store their corresponding delays δi,jmax in a set djmax.
3. For each pair of genes (i, j):
 - If iincjmax, remove i from incjmax. Otherwise, remove the node l with the lowest RDIδi,jmax(X(l)X(j)) from incjmax.
4. For each pair of genes (i, j): Output RDIδi,jmax(X(i)X(j)|{Xtδl,jmax(l)}lincjmax)