Honest DiD#

The Honest DiD module provides sensitivity analysis tools for potential violations of the parallel trends assumption, following Rambachan and Roth (2023). This allows researchers to assess the robustness of their DiD estimates to various forms of pre-trend violations.

Main Functions#

honest_did

Compute sensitivity analysis for event study estimates.

construct_original_cs

Construct original (non-robust) confidence set.

create_sensitivity_results_rm

Perform sensitivity analysis using relative magnitude bounds.

create_sensitivity_results_sm

Perform sensitivity analysis using smoothness restrictions.

Confidence Intervals#

ARP Confidence Intervals#

compute_arp_ci

Compute Andrews-Roth-Pakes (ARP) confidence interval with no nuisance parameters.

compute_arp_nuisance_ci

Compute Andrews-Roth-Pakes (ARP) confidence interval with nuisance parameters.

compute_least_favorable_cv

Compute least favorable critical value.

compute_vlo_vup_dual

Compute the truncation bounds for the test statistic using dual approach with bisection.

lp_conditional_test

Perform Andrews-Roth-Pakes (ARP) test of moment inequality with nuisance parameters.

test_in_identified_set

Test whether \(\bar{\theta}\) lies in the identified set using the ARP conditional approach.

test_in_identified_set_flci_hybrid

Hybrid test combining fixed-length confidence interval (FLCI) constraints with ARP conditional test.

test_in_identified_set_lf_hybrid

Conditional-least favorable (LF) hybrid test.

Fixed-Length Confidence Intervals#

compute_flci

Compute fixed-length confidence intervals under smoothness restrictions.

folded_normal_quantile

Compute quantile of folded normal distribution \(cv_{\alpha}(t)\).

maximize_bias

Find worst-case bias subject to standard deviation constraint \(h\).

minimize_variance

Find the minimum achievable standard deviation \(h\).

Restriction Types#

Relative Magnitude Restrictions#

compute_conditional_cs_rm

Compute conditional confidence set for \(\Delta^{RM}(\bar{M})\).

compute_identified_set_rm

Compute identified set for \(\Delta^{RM}(\bar{M})\).

compute_conditional_cs_rmb

Compute conditional confidence set for \(\Delta^{RM}(\bar{M})\) with bias sign restrictions.

compute_identified_set_rmb

Compute identified set for \(\Delta^{RMB}(\bar{M})\).

compute_conditional_cs_rmm

Compute conditional confidence set for \(\Delta^{RMI}(\bar{M})\).

compute_identified_set_rmm

Compute identified set for \(\Delta^{RMI}(\bar{M})\).

Smoothness Restrictions#

compute_conditional_cs_sd

Compute conditional confidence set for \(\Delta^{SD}(M)\).

compute_identified_set_sd

Compute identified set for \(\Delta^{SD}(M)\).

compute_conditional_cs_sdb

Compute conditional confidence set for \(\Delta^{SDB}(M)\).

compute_identified_set_sdb

Compute identified set for \(\Delta^{SDB}(M)\).

compute_conditional_cs_sdm

Compute conditional confidence set for \(\Delta^{SDI}(M)\).

compute_identified_set_sdm

Compute identified set for \(\Delta^{SDI}(M)\).

Combined Restrictions#

compute_conditional_cs_sdrm

Compute conditional confidence set for \(\Delta^{SDRM}(\bar{M})\).

compute_identified_set_sdrm

Compute identified set for \(\Delta^{SDRM}(\bar{M})\).

compute_conditional_cs_sdrmb

Compute conditional confidence set for \(\Delta^{SDRMB}(\bar{M})\).

compute_identified_set_sdrmb

Compute identified set for \(\Delta^{SDRMB}(\bar{M})\).

compute_conditional_cs_sdrmm

Compute conditional confidence set for \(\Delta^{SDRMM}(\bar{M})\).

compute_identified_set_sdrmm

Compute identified set for \(\Delta^{SDRMM}(\bar{M})\).

Result Objects#

HonestDiDResult

Container for honest_did sensitivity analysis results.

OriginalCSResult

Container for original confidence set assuming exact parallel trends.

SensitivityResult

Container for a single sensitivity analysis result.

FLCIResult

Container for fixed-length confidence interval results.

APRCIResult

Container for APR confidence interval results.

ARPNuisanceCIResult

Container for ARP confidence interval results with nuisance parameters.