Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Inverse Probability Weighing for Multiple Treatments

    Hi all,

    I am trying to compute inverse probability weight for multiple treatments. But I am struggling to do so.

    The common way to generate ipw for binary treatments is as follows.


    * Estimate the propensity score

    qui logit treatment x1 x2 x3, nolog

    predict double pscore if e(sample)

    * Create IP weight

    gen ipw = 1/pscore if treatment == 1

    replace ipw = 1/(1-pscore) if treatment ==0


    But I’m trying to compute inverse probability weighting for multiple treatment groups. My treatment values are 0, 1, 2, 3.

    I have obtained propensity score (pscore) for each group. Does anyone know how to compute “ipw” for each treatment group, please?

    Thank you so much for your time.






  • #2
    Hi Stephanie,
    To compute inverse probability weights for multiple treatment groups, you'll want to use a multinomial logit or multinomial probit model. You'll then assign weights that are the inverse of the probability of the treatment received (1/p[treatment 0], 1/p[treatment 1], 1/p[treatment 2], etc.).
    McCaffrey et al (https://pubmed.ncbi.nlm.nih.gov/23508673/) have a useful tutorial on ipws for multiple treatments - they use generalized boosting methods to estimate their propensity scores, but the points about weighting are relevant regardless of estimation strategy.

    However, depending on the comparison you're trying to make (i.e. are you only interested in making comparisons between treatments 2 and 3? or are you interested in making several comparisons between different pairs of treatments?), you may want to explore other methods of weighting that better account for the entire vector of propensity scores. I have a slide deck online that goes into more detail about these issues (https://www.hsrd.research.va.gov/for...SessionID=3970).

    Hope this helps,
    Melissa

    Comment

    Working...
    X