def test_positivity_calculator(self, data): ipt = IPTW(data, treatment='A', stabilized=True) ipt.regression_models(model_denominator='L', print_results=False) ipt.fit() ipt.positivity() npt.assert_allclose(ipt._pos_avg, 1) npt.assert_allclose(ipt._pos_sd, 0.456435, rtol=1e-5) npt.assert_allclose(ipt._pos_min, 2 / 3) npt.assert_allclose(ipt._pos_max, 2)
def test_positivity_calculator(self, data): ipt = IPTW(data, treatment='A', outcome='Y') ipt.treatment_model(model_denominator='L', print_results=False) ipt.marginal_structural_model('A') ipt.fit() ipt.positivity() npt.assert_allclose(ipt._pos_avg, 1) npt.assert_allclose(ipt._pos_sd, 0.456435, rtol=1e-5) npt.assert_allclose(ipt._pos_min, 2 / 3) npt.assert_allclose(ipt._pos_max, 2)
def test_unstabilized_positivity_warning(self, data): ipt = IPTW(data, treatment='A', stabilized=False) ipt.regression_models(model_denominator='L', print_results=False) ipt.fit() with pytest.warns(UserWarning): ipt.positivity()