Causal inference, graphical models and structure learning with the PC algorithm.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
src
test
.codecov.yml
.gitignore
.travis.yml
LICENSE.md
README.md
REQUIRE
appveyor.yml

README.md

Build Status

Latest

CausalInference.jl

Julia package for causal inference, graphical models and structure learning with the PC algorithm. This package contains for now the classical PC algorithm, tested on random DAGs by comparing the result of the PC algorithm using the d-separation oracle with CPDAGs computed with Chickering's DAG->CPDAG conversion algorithm (implemented as dsep and cpdag in this package).

See the documentation for other implemented functionality and issue #1 (Roadmap/Contribution) for coordination of the development.

The algorithms use the Julia package LightGraphs. Graphs are represented by sorted adjacency lists (vectors in the implemention). CPDAGs are just DiGraphs where unoriented edges are represented by both a forward and a backward directed edge.

References

  • D. M. Chickering: Learning Equivalence Classes of Bayesian-Network Structures. Journal of Machine Learning Research 2 (2002), 445-498.
  • D. Colombo, M. H. Maathuis: Order-Independent Constraint-Based Causal Structure Learning. Journal of Machine Learning Research 15 (2014), 3921-3962.