DeclareDesign Community

Why need rho in two-arm experiment?

I am currently reading about the two-arm experiment in the DeclareDesign library. I realize that this is probably a very basic question, but I’m honestly confused about declaration of the population and potential_outcomes code:

population <- declare_population(N = N, u_0 = rnorm(N), u_1 = rnorm(n = N, 
    mean = rho * u_0, sd = sqrt(1 - rho^2)))

potential_outcomes <- declare_potential_outcomes(Y ~ (1 - 
    Z) * (u_0 * control_sd + control_mean) + Z * (u_1 * treatment_sd + 
    treatment_mean))

Here are my questions:

  1. For defining the population, I’m confused about why we need rho at all. What does this do? I just thought that the code would ensure the u_0 and u_1 are the same like when rho = 1 (not sure why we wouldn’t want u_0 and u_1 to be the same). This is what I thought this code would look like:
population <- declare_population(N = N, 
                                 u_0 = rnorm(N), # Take mean = 0, sd = 1
                                 u_1 = u_0) # Make sure u_0 and u_1 are the same
  1. For potential_outcomes, I’m somewhat confused about this piece of the code: u_0 * control_sd + control_mean and this piece u_1 * treatment_sd + treatment_mean. What is this code trying to accomplish? I feel like I need a better grasp so I can adjust it in future designs.

Thanks in advance for the help!

Hello all, I am still needing help with this question. Any assistance would be greatly appreciated!

Your two questions about rho are related - for this specific process, it is allowing the two potential outcomes to be correlated (there are no other covariates in the model to soak this). The code in the potential outcomes step just rescales the POs to the correct units, it is originally on a Z scale.