insongkim / PanelMatch

117 stars 35 forks source link

Is it possible to weight the ATT estimates? #75

Closed augustocerqua closed 3 years ago

augustocerqua commented 3 years ago

Dear Authors,

Apologies for bothering you again. I am using PanelMatch for a couple of analyses and in one case it might make sense to weight the estimates on the basis of population (at least as robustness). I have 25 treated observations (municipalities) but 15 of them are rather small (<500 inhabitants). Is it possible to give more weights to larger municipalities rather than to give the same weight to all of them?

Many thanks, Augusto Cerqua

adamrauh commented 3 years ago

Hi @augustocerqua sorry for the delay in getting back to you. Currently, there is no way to weight the estimates as you describe. However, perhaps it would be useful to use population to create a moderating variable of some sort? That functionality does exist (example here)

augustocerqua commented 3 years ago

Hi Adam, many thanks for your reply. I did not know the moderator option (I guessed it was added recently to PanelMatch) and now I am wondering about the best possible usage of this option. In my analysis, I was evaluating the heterogeneity of the results by geographical area (suppose we have only 2 geographical areas with treated units) by running PanelMatch twice, first for Area 1 (Europe) and then for Area 2 (Asia). Now, I used the dummy variable Area as a moderating variable and I get similar results. Do you think this is a valid way to use the moderator option? The estimates and the SE I get when using Area as the moderating variable are slightly different from when I run PanelMatch separately for each area. Any idea why? Thanks

adamrauh commented 3 years ago

@augustocerqua based on what you described, that seems like a totally sensible use of the moderating variable. I think the slight difference in estimates makes sense, if I remember correctly. The moderating variable feature will essentially subset and calculate estimates by each value of the moderating variable of the treated units. But, treated units with moderator = A can still be matched with controls where moderator != A, for instance. When running things separately, treated and control units will all have the same value for the moderating variable. I'm pretty sure that the standard errors will also be different because they're calculated with bootstrapping, so there will always be a little variation.

In short, the matched sets are a little different in each setup.

augustocerqua commented 3 years ago

@adamrauh many thanks for the reply. All clear now