# pygformula: a python implementation of the parametric g-formula


## Overview
The pygformula package implements the non-iterative conditional expectation (NICE) algorithm of the g-formula algorithm
(Robins, 1986). The g-formula can estimate the counterfactual mean or risk of an outcome under hypothetical treatment strategies
(interventions) when there is sufficient information on time-varying treatments and confounders.


### Features

* Treatments: discrete or continuous time-varying treatments.
* Outcomes: failure time outcomes or continuous/binary end of follow-up outcomes.
* Interventions: interventions on a single treatment or joint interventions on multiple treatments.
* Random measurement/visit process.
* Incorporation of a priori knowledge of the data structure.
* Censoring events.
* Competing events.


## Requirements

The package requires python 3.8+ and these necessary dependencies:

- cmprsk
- joblib
- lifelines
- matplotlib
- numpy
- pandas
- prettytable
- pytruncreg
- scipy
- seaborn
- statsmodels
- tqdm


## Documentation

The online documentation is available at [pygformula documentation](https://pygformula.readthedocs.io).

