py-why/dowhy
DoWhy is a Python library for causal inference that supports explicit modeling and testing of causal assumptions. DoWhy is based on a unified language for causal inference, combining causal graphical models and potential outcomes frameworks.
Supports four distinct causal inference tasks—effect estimation via do-calculus and graph-based identification, causal influence quantification (mediation analysis), counterfactual what-if analysis, and root cause attribution. The library uniquely combines graphical causal models for structural reasoning with potential outcomes methods for estimation, enabling both treatment effect identification and node-level causal mechanism modeling. Its refutation API enables systematic falsification of causal assumptions across any estimation method.
7,995 stars. Used by 2 other packages. Actively maintained with 18 commits in the last 30 days. Available on PyPI.
Stars
7,995
Forks
1,012
Language
Python
License
MIT
Category
Last pushed
Mar 12, 2026
Commits (30d)
18
Dependencies
13
Reverse dependents
2
Get this data via API
curl "https://pt-edge.onrender.com/api/v1/quality/ml-frameworks/py-why/dowhy"
Open to everyone — 100 requests/day, no key needed. Get a free key for 1,000/day.
Related frameworks
uber/causalml
Uplift modeling and causal inference with machine learning algorithms
py-why/EconML
ALICE (Automated Learning and Intelligence for Causation and Economics) is a Microsoft Research...
cdt15/lingam
Python package for causal discovery based on LiNGAM.
andrewtavis/causeinfer
Machine learning based causal inference/uplift in Python
maks-sh/scikit-uplift
:exclamation: uplift modeling in scikit-learn style in python :snake: