kylebutts / did2s

Two-stage Difference-in-Differences package following Gardner (2021)
http://kylebutts.github.io/did2s
Other
96 stars 22 forks source link

Support for `did_multiplegt` #19

Closed grantmcdermott closed 2 years ago

grantmcdermott commented 2 years ago

The DiDMultiplegt package implements the method(s) proposed de Chaisemartin and D’Haultfœuille (2020, 2021).

Unfortunately, the key DiDMultiplegt::did_multiplegt() function doesn't produce a particularly user-friendly model object. It just returns a (jumbled) list and doesn't offer a set of associated methods. However, I have a manual example of how to extract (tidy) and plot the equivalent event-study here: https://asjadnaqvi.github.io/DiD/docs/code_r/07_did_multiplegt_r/#test-the-package

It would be pretty easy to bundle this functionality into did2s::event_study() if we want.

Pros: It would be nice to add did_multiplegt to the list of event_study() supported estimators.

Cons: It's a dramatically slower to estimate than most of the other methods and also requires us to guess/set the no. of bootstraps. Also, adding one more estimator will push us into 7 individual event-study facets, which will mess up the plot_event_study() aesthetics...

P.S. Looking at the underlying DiDMultiplegt source code, I can see various ways to speed up the estimation procedure (and maybe even dramatically so). But the maintainer doesn't seem particularly responsive...

kylebutts commented 2 years ago

I was looking at DiDMultiplegt code and it is outdated and failed when I tried it on did2s simulated dataset. Perhaps I'm missing something, but I think for now I would leave it out since my perfectionism would end up making me rewrite the whole thing

kylebutts commented 2 years ago

For now, I'll close. I'll DM Prof. de Chaisemartin and see if he has any updates on an R port that does all the things that the stata package does: https://github.com/shuo-zhang-ucsb/did_multiplegt/issues/1

grantmcdermott commented 2 years ago

Given the non-responsiveness of the current DiDMultiplegt maintainer, I think a rewrite of the package is inevitable if it's going to be viable going forward. Again, there's some low hanging fruit for easy gains. I don't have the time now, but my schedule might open up...