Association is the first level of the causal hierarchy. It answers “What is?” questions by describing, modeling, or detecting statistical dependence between variables without asserting that one causes another. section 10.1 section 10.1.1
A level-one question
For an online game, “What are in-game purchase amounts for players highly engaged in side-quests?” can be represented as P(I | E = “high”). This describes purchases among an observed group; it does not ask what purchases would be under an intervention that changed engagement. section 10.1.1
Association-level reasoning supports:
- Statistical models such as a linear regression of purchases on engagement or a neural network mapping engagement to purchases. section 10.1.2
- Observational analyses based on statistical assumptions about P(I | E), rather than assumptions about interventions or mechanisms. section 10.1.2 section 10.10
- A foundation for causal identification, which tests whether lower-level data can support higher-level causal queries under additional assumptions. section 10.10
Listing 10.1 Creating a query in y0
!pip install git+https://github.com/y0-causal-inference/y0.git@v0.2.0
from y0.dsl import P, Variable #1
E = Variable("E") #2
I = Variable("I") #2
query = P[E](I) #3
query #4
Represent the associational query P(I | E) in Python with y0, using variables for engagement and in-game purchases. section 10.1.1
