![]() ![]() When the observed baseline characteristics are sufficient to correct for confounding bias and the propensity model is correctly specified, propensity score analysis creates conditional exchangeability between persons with the same propensity score. Propensity score methods, first introduced by Rosenbaum and Rubin, are increasingly being used in medical research to handle confounding. Observational studies potentially suffer from confounding. When effect modification is present, default settings of imputation methods may yield biased results even if data are missing at random. The optimal way to handle missing values in covariates of propensity score models depends on the missing data structure and the presence of effect modification. Here, combining multiple imputation and the missing indicator method reduced the bias as the missing indicator variable can be a proxy for unobserved confounding. Multiple imputation may fail when data are missing not at random. In the presence of effect modification, more complex imputation models than default options of commonly used statistical software were required. Multiple imputation worked well if the data were missing (completely) at random, and if the imputation model was correctly specified. In some situations, complete case analysis was also able to partially correct for unmeasured confounding. When no effect modification existed, complete case analysis yielded valid causal treatment effects even when data were missing not at random. Additionally, we demonstrated how missingness graphs help clarifying the missing structure. Simulated scenarios varied regarding missing mechanism, presence of effect modification or unmeasured confounding. Concurrently, we aimed to provide guidance in choosing the optimal strategy. These methods include: complete case analysis, missing indicator method, multiple imputation and combining multiple imputation and missing indicator method. ![]() In this simulation study, we compared four strategies of handling missing covariate values in propensity matching and propensity weighting. Several strategies for handling missing values exist, but guidance in choosing the best method is needed. A challenge in propensity methods is missing values in confounders. & _n3!=.Propensity score analysis is a popular method to control for confounding in observational studies. Replace _weight=0.333 if _treated=0 & one_to_n=3 Replace _weight=0.5 if _treated=0 & one_to_n=2 Replace _weight=1 if _treated=0 & one_to_n=1 ** recreate output from 1:n matching with psmatch2 * reconstruct matches to original ID numbers *create 1:3 match descriptor for all matched **** Tidy up and recreate psmatch 1:3 output ** keep ID of matched control by generating new n1 variable Replace pscore=93 if _treated=0 & _weight=1 ** remove matched controls by changing propensity score to 93 ** nearest neighbour 1:1 matching with caliper 0.20*logit of SD ** keep ID of matched control by generating new _n2 variable Replace pscore=92 if _treated=0 & _weight=1 ** remove matched controls by changing propensity score to 92 ** nearest neighbour 1:1 matching with caliper 0.20*SD ** keep ID of matched control by generating new n1 and ID variable (new variable without underscore so it doesn't get overwritten)īysort pair: egen paircount = count(pair) Replace pscore=91 if _treated=0 & _weight=1 ** remove matched controls by changing propensity score to 91 (future rounds will be 92, 93 etc) Psmatch2, pscore(pscore) caliper (0.024) noreplacement descending ** nearest neighbour 1:1 matching with caliper 0.20*SD, adjust for your own data from 'sum pscore' results above *** run your own prediction model, save your propensity score under variable **** trial of 1:3 matching without replacement, using repeated 1:1 matching with psmatch2 **** I am looking forward to your feedback, please be kind. I was wondering if people could try this on their data to see if I haven't made a mess out of it?Īlso, if this does work, then maybe it can help somebody in a similar situation. Matches are identifiable through the variable, allowing for condition logistic regression or other analysis The output mirrors that of psmatch2, so pstest or similar can be used 1:3 (in this example) propensity score matching on a previously predicted propensity score, without replacement It's a bit clunky, but I think it does what I want it to do: I've combined advice on similar topics from a number of users in the do-file below. Note that this is not a discussion of the advantages or disadvantages of either method. However, psmatch2 only allows 1:n matching with replacement. I want to do 1:n propensity score matching (with n being flexible up to a certain number) without replacement. I have been looking for a solution to this problem for quite a while, and I think I have come up with a solution. This is my first ever post here, so please bear with me. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |