statsmodels.treatment.treatment_effects.TreatmentEffect#

class statsmodels.treatment.treatment_effects.TreatmentEffect(model, treatment, results_select=None, _cov_type='HC0', ps_bounds=(0.001, 0.999), **kwds)[source]#

Estimate average treatment effect under conditional independence

Added in version 0.14.0.

This class estimates treatment effect and potential outcome using 5 different methods, ipw, ra, aipw, aipw-wls, ipw-ra. Standard errors and inference are based on the joint GMM representation of selection or treatment model, outcome model and effect functions.

Parameters:
modelinstance of a model class

The model class should contain endog and exog for the outcome model.

treatmentarray_like

indicator array for observations with treatment (1) or without (0)

results_selectresults instance, optional

The results instance for the treatment or selection model.

_cov_typestr, optional

Internal keyword. The keyword does not affect GMMResults which always corresponds to HC0 standard errors.

ps_boundsarray_like of float, optional

Lower and upper bounds for clipping the propensity score, i.e. the predicted probabilities of the selection model. The same bounds are used for point estimates and for the GMM moment conditions of all estimation methods. Default is (0.001, 0.999).

**kwds

Currently not used.

Methods

aipw([return_results, disp])

ATE and POM from double robust augmented inverse probability weighting

aipw_wls([return_results, disp])

ATE and POM from double robust augmented inverse probability weighting

from_data(endog, exog, treatment[, model])

Create models from data

ipw([return_results, effect_group, disp])

Inverse Probability Weighted treatment effect estimation

ipw_ra([return_results, effect_group, disp])

ATE and POM from inverse probability weighted regression adjustment

ra([return_results, effect_group, disp])

Regression Adjustment treatment effect estimation

Notes

The outcome model is currently limited to a linear model based on OLS. Other outcome models, like Logit and Poisson, will become available in future.

See Treatment Effect notebook for an overview.

Methods

aipw([return_results, disp])

ATE and POM from double robust augmented inverse probability weighting

aipw_wls([return_results, disp])

ATE and POM from double robust augmented inverse probability weighting

from_data(endog, exog, treatment[, model])

Create models from data

ipw([return_results, effect_group, disp])

Inverse Probability Weighted treatment effect estimation

ipw_ra([return_results, effect_group, disp])

ATE and POM from inverse probability weighted regression adjustment

ra([return_results, effect_group, disp])

Regression Adjustment treatment effect estimation