Skip to content

💊 Comparing causality methods in a fair and just way.

License

Notifications You must be signed in to change notification settings

inovex/justcause

Repository files navigation

Docs Status CI Status Coverage Status Code style: black PyPI-Server

JustCause logo


Introduction

Evaluating causal inference methods in a scientifically thorough way is a cumbersome and error-prone task. To foster good scientific practice JustCause provides a framework to easily:

  1. evaluate your method using common data sets like IHDP, IBM ACIC, and others;
  2. create synthetic data sets with a generic but standardized approach;
  3. benchmark your method against several baseline and state-of-the-art methods.

Our cause is to develop a framework that allows you to compare methods for causal inference in a fair and just way. JustCause is a work in progress and new contributors are always welcome.

Installation

If you just want to use the functionality of JustCause, install it with:

pip install justcause

Consider using conda to create a virtual environment first.

Developers that want to develop and contribute own algorithms and data sets to the JustCause framework, should:

  1. clone the repository and change into the directory

    git clone https://github.com/inovex/justcause.git
    cd justcause
    
  2. create an environment justcause with the help of conda,

    conda env create -f environment.yaml
    
  3. activate the new environment with

    conda activate justcause
    
  4. install justcause with:

    python setup.py install # or `develop`
    

Optional and needed only once after git clone:

  1. install several pre-commit git hooks with:
    pre-commit install
    
    and checkout the configuration under .pre-commit-config.yaml. The -n, --no-verify flag of git commit can be used to deactivate pre-commit hooks temporarily.

Related Projects & Resources

  1. causalml: causal inference with machine learning algorithms in Python
  2. DoWhy: causal inference using graphs for identification
  3. EconML: Heterogeneous Effect Estimation in Python
  4. awesome-list: A very extensive list of causal methods and respective code
  5. IBM-Causal-Inference-Benchmarking-Framework: Causal Inference Benchmarking Framework by IBM

Note

This project has been set up using PyScaffold 3.2.2 and the dsproject extension 0.4. For details and usage information on PyScaffold see https://pyscaffold.org/.