Suppose side-quest engagement affects in-game purchases, but player characteristics also influence both. Comparing purchases among players with different engagement levels mixes the effect of engagement with those common causes. A backdoor adjustment estimand targets the purchase distribution under an intervention on engagement, using quantities from observational data. section 10.3.1 section 10.3
For a treatment X, outcome Y, and adjustment set Z, the formula is P(Yₓ₌ₓ = y) = ∑z P(Y = y | X = x, Z = z)P(Z = z). Within each value of Z, it uses the observed outcome distribution at treatment value x; it then weights those distributions by how common each value of Z is overall. Integrate rather than sum over continuous adjustment variables. This expression is the estimand—what an estimator must estimate—not an estimate calculated from data. section 10.3 section 10.3.1
Before using the formula, check the causal model and data:
- Choose a set that blocks every backdoor path from X to Y and contains no descendants of X. More than one set may qualify. section 10.3.1 section 11.7
- Check the required confounding assumption. An unmeasured common cause that leaves a backdoor path open invalidates this estimand; uncertainty about an edge that does not affect identification need not. section 11.3.1 section 11.3.4
Engagement and purchases
Let E be side-quest engagement, I be in-game purchases, and G be a common cause. The path E ← G → I makes P(I | E = “high”) different from the desired interventional distribution. If G blocks the backdoor path, P(Iₑ₌ₑ = i) = ∑g P(I = i | E = e, G = g)P(G = g). In a larger gaming model, Guild Membership, Time Spent Playing, and Player Skill Level form the adjustment set for estimating the engagement effect on purchases. section 10.3.1 section 11.4.1
Identification and estimation are separate decisions. DoWhy’s identify_effect() lists candidate estimands and their assumptions; choose one whose assumptions are credible. Then estimate the backdoor estimand, for example with linear regression that includes the treatment and adjustment variables. In the specified linear model, the treatment coefficient estimates the average treatment effect (ATE); double machine learning and meta learners are other backdoor estimation options. section 11.3 section 11.4 section 11.4.1 section 11.4.3
Listing 11.5 Estimating the backdoor estimand with linear regression
causal_estimate_reg = model.estimate_effect(
identified_estimand, #1
method_name="backdoor.linear_regression", #2
confidence_intervals=True #3
)
Shows the DoWhy call that applies linear regression to an already identified backdoor estimand and requests confidence intervals. section 11.4
