jamalsenouci / causalimpact

Python port of CausalImpact R library
Apache License 2.0
277 stars 64 forks source link

CausalImpact

Python package codecov monthly downloads DeepSource

A Python package for causal inference using Bayesian structural time-series models

This is a port of the R package CausalImpact, see: https://github.com/google/CausalImpact.

This package implements an approach to estimating the causal effect of a designed intervention on a time series. For example, how many additional daily clicks were generated by an advertising campaign? Answering a question like this can be difficult when a randomized experiment is not available. The package aims to address this difficulty using a structural Bayesian time-series model to estimate how the response metric might have evolved after the intervention if the intervention had not occurred.

As with all approaches to causal inference on non-experimental data, valid conclusions require strong assumptions. The CausalImpact package, in particular, assumes that the outcome time series can be explained in terms of a set of control time series that were themselves not affected by the intervention. Furthermore, the relation between treated series and control series is assumed to be stable during the post-intervention period. Understanding and checking these assumptions for any given application is critical for obtaining valid conclusions.

Try it out in the browser

Binder

Installation

install the latest release via pip

pip install causalimpact

Getting started

Documentation and examples

Further resources

Bugs

The issue tracker is at https://github.com/jamalsenouci/causalimpact/issues. Please report any bugs that you find. Or, even better, fork the repository on GitHub and create a pull request.