Announcement

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

  • Multinomial Propensity Matching in STATA for an Epilepsy study

    Dear all,

    I have an observational study in which I compare five different treatments (variable "treat"). The data consists of panel data, where subjects ("id") are observed at different time points (time variable "followup"), along with other covariates.

    Below, you can see how the data is organized. My question is: I want to compare patients using propensity score matching. In this case, I presume I need to use a multinomial model to predict treatment assignment.

    However, I have never applied this method to panel data before. I've noticed that there is a lot of discussion and confusion on the web about the correct analytical strategy.

    How would you approach this?
    Would it be correct to reshape the data into a wide format and estimate the propensity score based on baseline characteristics and back long-reshape?

    Thanks in advance.
    Gianfranco


    Code:
    * Example generated by -dataex-. For more info, type help dataex
    clear
    input float(id treat event intercurrent followup age sex)
    959 3 0 1 18.066668 27 0
    959 3 0 1         6 27 0
     91 1 1 0         7 26 0
     91 1 1 1         6 26 0
     93 1 0 1         6 32 1
     93 1 0 0        12 32 1
     96 1 0 0         6 31 1
     97 1 0 1        36 34 0
     97 1 0 1        24 34 0
     97 1 0 1         6 34 0
     97 1 0 1        12 34 0
     98 1 1 0         6 58 1
     83 1 1 0         7 29 0
     83 1 1 1         6 29 0
    101 1 0 1        12 61 0
    101 1 0 1         6 61 0
    101 1 0 0        13 61 0
    110 5 1 1         6 48 1
    111 4 1 1        12 29 1
    111 4 0 1         6 29 1
    112 4 1 0        24 38 1
    113 4 1 1        36 26 1
    114 4 0 1        24 64 0
    114 4 0 1        12 64 0
    114 4 0 1        36 64 0
    115 4 0 1        12 41 1
    115 4 0 1        24 41 1
    115 4 0 0        25 41 1
    115 4 0 1         6 41 1
     85 1 0 1        24 82 1
     85 1 0 0        33 82 1
     85 1 0 1        12 82 1
     85 1 0 1         6 82 1
    122 2 1 1        24 43 1
    122 2 0 1        36 43 1
    123 2 0 1        36 75 1
    123 2 0 1         6 75 1
    123 2 0 1        24 75 1
    124 2 0 1         6 27 1
    124 2 0 1        36 27 1
    125 2 0 1        24 32 1
    125 2 0 1        36 32 1
    127 2 0 1        36 61 1
    128 2 0 1        24 60 1
    128 2 0 1        36 60 1
    129 2 0 1        24 62 0
    129 2 0 1         6 62 0
    129 2 0 1        36 62 0
    129 2 0 1        12 62 0
    130 2 0 1        36 52 0
    130 2 0 1        24 52 0
    132 2 0 0        23 28 1
    132 2 0 1        12 28 1
    133 2 0 1        12 36 1
    133 2 0 0        22 36 1
    134 2 0 1        12 53 1
    134 2 0 0        25 53 1
    134 2 0 1        24 53 1
    135 2 0 1        12 38 0
    135 2 0 1        36 38 0
    136 2 0 0        10 58 0
    136 2 0 1         6 58 0
    138 2 0 1        24 29 0
    138 2 0 1        36 29 0
    138 2 0 1        12 29 0
    139 2 0 1        36 31 0
     87 1 1 1        12 57 1
     87 1 1 1         6 57 1
     87 1 1 0        24 57 1
     88 1 0 0        12 27 1
     88 1 0 1         6 27 1
    314 4 0 1         6 31 0
    314 4 0 0        14 31 0
    314 4 0 1        12 31 0
    323 1 0 1         6 39 1
    323 1 0 1        36 39 1
    324 1 0 1        36 41 0
    324 1 0 1 12.266666 41 0
    324 1 0 1        12 41 0
    326 1 1 0        12 56 1
    327 1 0 1        12 61 1
    327 1 0 1        24 61 1
    327 1 0 1         6 61 1
    327 1 0 1  21.96667 61 1
    329 1 0 1        36 41 1
    329 1 0 1        12 41 1
    331 1 0 1         6 88 1
    331 1 0 1  8.666667 88 1
    332 1 0 1        12 37 0
    332 1 0 1        36 37 0
    332 1 0 1      13.3 37 0
    332 1 0 1         6 37 0
    315 5 0 1         6 37 0
    315 5 0 1 30.633333 37 0
    315 5 0 1        12 37 0
    315 5 0 1        36 37 0
    333 1 0 1         6 30 1
    333 1 0 1 24.333334 30 1
    334 1 0 1         6 47 1
    335 1 0 1        12 43 0
    end

  • #2
    If the treatment is given before (or at the very beginning) of the panel data collection, then using propensity scores would be a good approach. For a multi-category treatment, you can use a multinomial logit model to predict treatment category and then use inverse propensity weighting in the subsequent analysis procedure to predict the outcome of interest. There are machine learning methods for prediction as well, and the two most appropriate in Stata (rforest and mlp2) work with a multinomial outcome type.

    Code:
    net describe rforest, from(http://fmwww.bc.edu/RePEc/bocode/r)
    net describe mlp2, from(http://www.stata.com/users/nbalov)
    The mechanics of reshaping long to wide is one way to do it. Alternatively, put the id, treatment type, and pre-treatment variables into a new frame and then run the multinomial logit model there, get the prediction, and calculate the inverse probability weight. Then bring that weight variable back into the frame with the panel data, matching on id.

    Comment

    Working...
    X