ShowWhy is a suite of no-code interfaces for performing data analysis using causal ML techniques and libraries. Currently, ShowWhy consists of four primary user-interfaces:
The data-wrangling application allows users to clean, transform, and prepare data for analysis. Data tables created in the wrangling app can be used in other views within the application.
This interface, formerly known as ShowWhy, allows users to define and test hypotheses around causal links within data in order to validate their prior assumptions. For example, a user may have some prior domain knowledge that "co2 emissions cause global warming" or "smoking causes cancer". This interface will verify these causal claims using the dowhy suite of refuters and estimators, and will help the user to understand the results of these analyses.
The event analysis interface allows users to use time-series observational data containing treated and untreated units to detect whether treatments had a net effect on outcomes. This interface uses the Synthetic Differences-in-Differences technique for analysis.
This interface allows users to inspect variable relationships within data, and to perform causal discovery using a variety of techniques such as Causica, NOTEARS and DirectLiNGAM.
In order to run the application locally, you will need to ensure that you have Docker installed and running on your machine. You can find instructions for installing Docker here.
Open up a terminal application, and using the command-line interface (CLI) run the following command:
docker-compose --profile all up
For delevopers wishing to contribute to the project, refer to DEVELOPING.md for instructions on getting started.
Check the deployment documentation for instructions on how to deploy to a local kubernetes instance or to AKS on Azure.
We welcome contributions to the application. All submissions must pass the CLABot verification.