TFP CausalImpact
This Python 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 [1].
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.
TFP CausalImpact is a Python + TensorFlow Probability implementation of the CausalImpact R package developed at Google by Kay Brodersen and Alain Hauser. TFP CausalImpact is based on both the original R package and on a Python version https://github.com/dafiti/causalimpact developed at Dafiti by Willian Fuks. TFP CausalImpact was developed at Google by Colin Carroll, David Moore, Jacob Burnim, Kyle Loveless, and Susanna Makela.
This is not an officially supported Google product.
[1] Inferring causal impact using Bayesian structural time-series models. Kay H. Brodersen, Fabian Gallusser, Jim Koehler, Nicolas Remy, Steven L. Scott. Annals of Applied Statistics, vol. 9 (2015), pp. 247-274. https://research.google/pubs/pub41854/
Getting Started
TFP CausalImpact can be installed via pip:
pip install tfp-causalimpact
And imported as:
import causalimpact
See also the Quick-Start Guide.
Development
Clone TFP CausalImpact, install the development dependencies, and run the unit tests with:
git clone https://github.com/google/tfp-causalimpact.git tfp_causalimpact
cd tfp_causalimpact
pip install flit
flit install --only-deps
pytest -vv -n auto
Metadata
Release files for tfp-causalimpact 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| tfp-causalimpact-0.2.0.tar.gz | 80.0 kB | Without provenance | Details for tfp-causalimpact-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tfp_causalimpact-0.2.0-py3-none-any.whl | Python 3 | none | any | Details for tfp_causalimpact-0.2.0-py3-none-any.whl |
Total release size: 117.2 kB
Release files / tfp-causalimpact-0.2.0.tar.gz
| Download URL | tfp-causalimpact-0.2.0.tar.gz |
|---|---|
| Size | 80.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7745f43ae97faffc04c8a5105ba0bf323da176407d8d8f663fe4b1042a34f347
|
|
BLAKE2b-256 checksum How to use checksums |
2581808cedbd2e8846745927841edc8681b48abc4d38f7a68905efe5d7836073
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.30.0
|
Release files / tfp_causalimpact-0.2.0-py3-none-any.whl
| Download URL | tfp_causalimpact-0.2.0-py3-none-any.whl |
|---|---|
| Size | 37.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
42bac2b858396761905560c99174097f8a6c94866891b213091214c48a2cb917
|
|
BLAKE2b-256 checksum How to use checksums |
ba49a98ebeb9611479b7f4173dddbccf35ac7c067aa3162be354384dee7d651f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.30.0
|
Security for tfp-causalimpact 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.