Treatment Effect Analysis for Pairs with Endogenous Treatment Takeup
Joint work with Robert P. Lieli.
We study causal inference in a setting in which units consisting ofpairsof individuals(such as married couples) are assigned randomly to one of four categories: treatment for pairmemberAalone, a potentially different treatment for pair memberBalone, joint treatment, orno treatment. Allowing for endogenous non-compliance, coordinated treatment take-up, as wellas interference across pair members, we derive the causal interpretation of various instrumentalvariable estimands. While the local average treatment effect (LATE) parameters associatedwith applying the two treatments in isolation are identified under appropriate monotonicityconditions, coordinated treatment takeup makes it difficult to separate the interaction betweenthe two treatments from treatment effect heterogeneity. The stated identification results extendthe literature on causal inference in settings where the stable unit treatment value assumption(SUTVA) does not hold.
In a Julia REPL step into the
Pkg by pressing
add https://github.com/kmmate/TreatmentEffects.jl. Press backspace to quit
Pkg. In the REPL:
using TreatmentEffects, CSV data = read_csv("pim_data.csv") y = data[:outcome] d_a = data[:treatment_takeup_a] # d_a_i=1 iff i'th member-A is treated d_b = data[:treatment_takeup_b] # d_b_i=1 iff i'th member-B is treated z_a = data[:treatment_assignment_a] # z_a_i=1 iff i'th member-A is assigned to treated z_b = data[:treatment_assignment_b] # z_b_i=1 iff i'th member-B is assigned to treated m = PairedInterferenceModel(y, d_a, d_b, z_a, z_b) late_estimates = late_estimator(m) # -> [baseline, late_for_treatmentA_compliers, late_for_treatmentB_compliers, noise]