estimatr icon indicating copy to clipboard operation
estimatr copied to clipboard

Aronow Green Lee sharp bounds variance?

Open bfifield opened this issue 6 years ago • 2 comments

This whole package/project is fantastic. Just wondering if you have any plans to implement the Aronow Green Lee sharp bounds variance from their AOS paper (https://projecteuclid.org/euclid.aos/1400592645) for difference_in_means(). And if you have objections to it, I'd be curious as to why. Total feature request, not at all a priority.

bfifield avatar Nov 15 '18 14:11 bfifield

I think the bounds are great could imagine one might take the conservative bound and calculate p values and cis from that; sometimes it helps, sometimes not...

fwiw they already provide code for the bounds in the paper (here also since copy/paste from the paper is messy) http://www.macartan.nyc/experiment/neyman/

Luke any sense how hard this would be to combine with clusters?

On Thu, Nov 15, 2018 at 3:44 PM Ben Fifield [email protected] wrote:

This whole package/project is fantastic. Just wondering if you have any plans to implement the Aronow Green Lee sharp bounds variance from their AOS paper (https://projecteuclid.org/euclid.aos/1400592645) for difference_in_means(). And if you have objections to it, I'd be curious as to why. Total feature request, not at all a priority.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/DeclareDesign/estimatr/issues/271, or mute the thread https://github.com/notifications/unsubscribe-auth/AMJO_cJdW6NX9THgCgtztqR9Wq2ovW9qks5uvX3ggaJpZM4Yf79C .

macartan avatar Nov 15 '18 14:11 macartan

@bfifield, there is no current plan, but I think this would be a fairly simple thing to implement. It does, however, require the addition of another argument to the difference_in_means function, as there is currently no variance_type or se_type argument.

I propose the following:

  • We add argument se_type to difference_in_means. This always defaults to default. For unit-, block-, cluster-, and block-clustered designs (i.e. not matched-pair designs as the N within block cannot grow asymptotically, violating proposition 1 in the paper), we should also allow sharp_upper and sharp_lower that people can use to get these bounded standard errors.
  • These implement the proposed estimator in the paper, and heed the following advice for other designs, from the discussion section of the paper (@macartan, this answers your question):

The proposed variance estimator may also be extended to alternative designs. For block-randomized designs where the number of units per block grows asymptotically large, Proposition 1 holds within each block, and thus calculation of the overall variance is straightforward. In cluster-randomized designs with equally-sized clusters, the proposed estimator may be used with the unit of analysis being the cluster and the outcome being the cluster mean.

Thus the estimator with clusters is obvious, and with blocks we do the same aggregation of block-wise variances, using either the upper or lower bound. within each block

lukesonnet avatar Nov 16 '18 20:11 lukesonnet