Skip to content

[Experimental] Global causal discovery algorithms

License

Notifications You must be signed in to change notification settings

HarshaSatyavardhan/dodiscover

Repository files navigation

Code style: black CircleCI unit-tests Checked with mypy codecov

dodiscover

dodiscover is a Python library for causal discovery, or structure learning. This is generally considered a "first step" in the causal inference pipeline, if one does not have access to a hypothesized causal graph for their situation.

Documentation

See the development version documentation.

Or see stable version documentation

Installation

Installation is best done via pip or conda. For developers, they can also install from source using pip. See installation page for full details.

Dependencies

Minimally, dodiscover requires:

* Python (>=3.8)
* numpy
* scipy
* networkx
* pywhy-graphs

User Installation

If you already have a working installation of numpy, scipy and networkx, the easiest way to install dodiscover is using pip:

# doesn't work until we make an official release :p
pip install -U dodiscover

# If you are a developer and would like to install the developer dependencies
pip install dodiscover[doc,style,test]

# If you would like full functionality, which installs all of the above
pip install dodiscover[all]

To install the package from github, clone the repository and then cd into the directory:

pip install -e .

# One can also add the different identifiers, such as '[doc]' to install
# extra dependencies

Current Limitations and Current Roadmap

Currently, selection bias representation is not implemented in the corresponding algorithms. However, I believe it is technically feasible based on the design of how we use networkx.

About

[Experimental] Global causal discovery algorithms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%