Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.8.0 #108

Merged
merged 40 commits into from Jul 17, 2019
Merged

v0.8.0 #108

merged 40 commits into from Jul 17, 2019

Conversation

pzivich
Copy link
Owner

@pzivich pzivich commented Jun 26, 2019

Update for version 0.8.0. Below are listed the planned additions

Inverse Probability of Treatment Weights

  • Changing entire structure Change IPTW API #102

  • Figure out why new structure is giving slightly different values for positivity calculations...

  • Add g-bounds option to truncate weights

  • Update tests for new structure

  • Weight argument behaves slightly different (diagnostics now available for either IPTW alone or with other weights)

  • New summary function for results

  • Allowing for continuous treatments in estimation of MSM ...for later

  • Plots available for binary or continuous treatments ...for later

Inverse Probability of Censoring Weights

  • Correction for pooled logistic weight calculation with late-entry occurring Raise ValueError if late-entry is detected. The user will need to do some additional work

  • Create better documentation for when late-entry occurs for this model

G-formula

  • Add diagnostics (prediction accuracy of model)

  • Add run_diagnostics()

Augmented IPTW

  • Add g-bounds

  • Add diagnostics for weights and outcome model

  • Add run_diagnostics()

TMLE

  • New warning when using machine learning algorithms to estimate nuisance functions TMLE & Machine Learning #109

  • Add diagnostics for weights and outcome model

  • Add run_diagnostics()

S-value

ReadTheDocs Documentation

  • Add S-value

  • Update IPTW

  • Make sure run_diagnostics() and bound are sufficiently explained

@pzivich pzivich self-assigned this Jun 26, 2019
@pzivich
Copy link
Owner Author

pzivich commented Jun 30, 2019

Positivity values change because the new setup is dropping the y==np.nan observations which is a different behavior. As long as the treatment and covariates predicting treatment are not missing, then the weight should not be missing. This will change when paired with other weights

@pzivich
Copy link
Owner Author

pzivich commented Jul 12, 2019

I am changing IPTW back to not dropping missing outcome data (I switched it in the past few pushes). TMLE does not do this (neither does TimeFixedGFormula). The missing outcome data (censored) should only be dropped from the and fit() procedures. All other missing data (missing treatment A or missing confounders C) will be dropped in the __init__

I will also update AIPTW to mimic this behavior. This seems to be the standard practice (so far as I can find). It also makes the integration with censoring weights for Y easier for users

@pzivich
Copy link
Owner Author

pzivich commented Jul 12, 2019

Related to the prior comment, I am going to update how missing outcome data is handled across estimators. Like TMLE, AIPTW and IPTW will gain a new function (missing_model()) to generate IPM(C)W to account for missing outcome data.

The advantage of this approach is (1) better alignment of estimator functions, (2) doesn't require user to bring in separately estimated weights, (3) does not require the weights argument change as discussed in #106 and above

For time-varying estimators, I should do something similar. MonteCarloGFormula already has this feature and IterativeCondGFormula implicitly does this (it is a feature of the estimator, much like TimeFixedGFormula). Will need to be added to LTMLE, LongitudinalIPTW, and SurvivalIPTW when implemented

@pzivich
Copy link
Owner Author

pzivich commented Jul 16, 2019

Does g-estimation require the addition of missing_model()? I don't think it does...

It doesn't. I will keep how the weight argument works for that model. Adding a missing_model() is unnecessary for how that estimators works (unlike IPTW)

Nevermind. missing_model() is part of GEstimationSNM as well

@pzivich
Copy link
Owner Author

pzivich commented Jul 16, 2019

Next step is to run through all of the zEpid tutorials and update them before the release. I will likely try to get through them tomorrow and make 0.8.0 available tomorrow

@pzivich pzivich merged commit 3ac849d into master Jul 17, 2019
This was referenced Jul 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant