Four units, three worlds
A randomized experiment with four units, built for CS130 at Minerva University. You decide who gets treated. The question is whether each unit still has exactly two potential outcomes, one for treated and one for not.
Flip a unit's assignment. Which rows change?
| Unit | Assignment | Observed outcome |
|---|
Potential outcomes unit 4 would need
2
one potential outcome for each possible assignment
Difference in means, treated minus control
—
Steps
- Before touching anything: you are about to flip unit 3 from control to treated. Predict what happens to unit 4's observed outcome.Write your prediction down, then continue.
- In the world where SUTVA holds, flip unit 3.How many rows changed? Did unit 4 move?
- Switch to the interference world and flip unit 3 again, back and forth.What does unit 4's outcome do, even though you never touched unit 4?
- Switch to the hidden-versions world and treat units 1 and 2.Both are treated, both had an effect of +50 in the SUTVA world. Why do they now gain different amounts? What does that do to the difference in means?
Questions
What this page assumes
- Four units with fixed potential outcomes under control and under treatment, chosen so every unit's own effect is +50.
- No sampling noise. In the hidden-versions world, units 1 and 3 receive dose A if treated and units 2 and 4 receive dose B; this is fixed and never recorded in the data.
- Interference runs one way only: unit 3's assignment lowers unit 4's outcome by 45. No other unit is affected.
- Dose B is dose A minus 40. There are only two versions.
- The difference in means is shown as a description of the data, not as an estimate of anything; whether it estimates a well-defined quantity is the point of the exercise.
- Left out on purpose: how to estimate effects when interference is present (exposure mappings) and how to recover a well-defined effect by specifying the version.
The mechanism in R
T <- c(0, 0, 0, 0) # you set these
Y0 <- c(50, 40, 60, 50); Y1 <- Y0 + 50
Y <- ifelse(T == 1, Y1, Y0) # SUTVA world
Y[4] <- Y[4] - 45 * T[3] # interference world
dose <- c("A", "B", "A", "B") # not recorded
Y <- Y - 40 * (T == 1 & dose == "B") # hidden-versions world
Assume perfect compliance with assignment: every unit receives exactly the condition it is assigned.
Answers you type stay in this browser only. Nothing is sent anywhere.
Alexis Diamond, CS130, Minerva University.