effect_size <- 0.1
design <-
declare_model(
N = 100,
U = rnorm(N),
X = rnorm(N),
potential_outcomes(Y ~ effect_size * Z + X + U)
) +
declare_inquiry(ATE = mean(Y_Z_1 - Y_Z_0)) +
declare_assignment(Z = complete_ra(N)) +
declare_measurement(Y = reveal_outcomes(Y ~ Z)) +
declare_estimator(Y ~ Z, inquiry = "ATE", label = "unadjusted") +
declare_estimator(Y ~ Z + X, inquiry = "ATE", label = "adjusted")
diagnosis <- diagnose_design(design, sims = 100)
tidy(diagnosis)
Run the code above in your browser using DataLab