adam2392 / causal-networkx

A lightweight graph class library relevant for causal inference.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Implement improvements to graph structure: convert to numpy/dagitty, read/save to disc

adam2392 opened this issue · comments

For IO

I think just save to disc ideally in one file...

Options for formatting:

  • str format (i.e. daggitty)
  • numpy format as an array (can use npz format for multiple arrays)
  • graph format (tbd networkx/networkx#5611)

For conversion methods

Add conversion methods:

  • perhaps one numpy array per edge graph (i.e. normal directed edges, bidirected, and circle edges)
  • ^ this can be consolidated into one numpy array with an enumeration mapping all possible edge combinations to a number. This would only be possible for PAGs where there is allowed only 1 edge between any two nodes
  • open question: how to consolidate into one numpy array for causal graphs where 2 edges between nodes are possible. Perhaps here return 2 numpy arrays... One for directed and one for bidirected edges

Will require:

  • Enumeration mapping edge values