Transformation-based uplift modeling package.
Switch branches/tags
Nothing to show
Clone or download
rsyi Adjust practical max calculation to prevent potentially negative valu…
…es. Add in a few more unit tests. (#9)

* Bugfix with practical max curve -- in a very specific case where there are more treatment group responders than control group NON-responders, the practical max curve would be negative. Wrote code to preserve original shape of curve, but prevent this from happening.

* Add in more complex unit tests with odd policy.
Latest commit 31d2147 Oct 31, 2018


Documentation Status Build Status

Read our documentation!

pylift is an uplift library that provides, primarily, (1) fast uplift modeling implementations and (2) evaluation tools. While other packages and more exact methods exist to model uplift, pylift is designed to be quick, flexible, and effective. pylift heavily leverages the optimizations of other packages -- namely, xgboost, sklearn, pandas, matplotlib, numpy, and scipy. The primary method currently implemented is the Transformed Outcome proxy method (Athey 2015).


Licensed under the BSD-2-Clause by the authors.


Athey, S., & Imbens, G. W. (2015). Machine learning methods for estimating heterogeneous causal effects. stat, 1050(5).

Gutierrez, P., & Gérardy, J. Y. (2017). Causal Inference and Uplift Modelling: A Review of the Literature. In International Conference on Predictive Applications and APIs (pp. 1-13).

Hitsch, G., & Misra, S. (2018). Heterogeneous Treatment Effects and Optimal Targeting Policy Evaluation. Preprint