R/iv_finite_factorial.R
iv_finite_factorial.Rd
Estimate main effect IV ratios for 2^K factorial experiments
iv_finite_factorial(formula, data, subset, level = 0.95)
formula | formula specification of the factorial design with
noncompliance. The right-hand side of the formula should have
two components separated by the |
---|---|
data | a data.frame on which to apply the |
subset | subset of the data to pass to estimation. |
level | the confidence level required. |
A list of class iv_finite_factorial
that contains the
following components:
a vector of estimated effect ratios for each factor.
a matrix of confidence intervals for each effect ratio. This matrix has 4 columns because it is possible to have disjoint confidence intervals in this method.
a vector of the estimated effects on the outcome.
the estimated sample variances of the effects on the outcome.
a vector of the estimated effects on treatment uptake.
the estimated sample variances of the effects on treatment uptake.
the confidence level of tau_cis
.
This function estimates the ratio of the effect of treatment assignment on the outcome to the effect of treatment assignment on treatment uptake in 2^K factorial experiments. The approach uses finite sample asymptotic inference to generate confidence intervals.
Matthew Blackwell and Nicole Pashley (2021) "Noncompliance in Factorial Experiments." Working paper.
Matt Blackwell
data(newhaven) out <- iv_finite_factorial(turnout_98 ~ inperson + phone | inperson_rand + phone_rand, data = newhaven) out#> #> Call: #> iv_finite_factorial(formula = turnout_98 ~ inperson + phone | #> inperson_rand + phone_rand, data = newhaven) #> #> Marginalized-complier factorial effects: #> inperson phone #> 0.0997279 -0.2113954 #> #> Perfect-complier factorial effects: #> inperson phone inperson:phone #> 0.08204211 0.09320411 -0.10451730joint <- iv_finite_factorial(turnout_98 ~ inperson + phone | inperson_rand + phone_rand, data = newhaven) joint#> #> Call: #> iv_finite_factorial(formula = turnout_98 ~ inperson + phone | #> inperson_rand + phone_rand, data = newhaven) #> #> Marginalized-complier factorial effects: #> inperson phone #> 0.0997279 -0.2113954 #> #> Perfect-complier factorial effects: #> inperson phone inperson:phone #> 0.08204211 0.09320411 -0.10451730