Skip to content
StatsOtter A workspace for causal thinking
Method library WORKFLOW / 024
Research workflow/3 steps

Learn an interpretable treatment policy (DoubleML policy tree)

Source DoubleML — Bach, Chernozhukov, Kurz & Spindler
01
The method workspace

Follow the analysis.

Select a node to explore the method

Method mapInput → 3 steps → output
START WITHInput data
ARRIVE ATResults
Read step 01
Inside the methodReasoning, equations & implementation
Step 1 of 3
01
Estimation

Orthogonal scores from an IRM

The core estimate — where the causal quantity itself is computed.

What happens here

Cross-fitted doubly-robust scores Γ — the reward signal for each unit.

Formula
\Gamma_i=g_1(X_i)-g_0(X_i)+\dfrac{D_i(Y_i-g_1)}{m(X_i)}-\dfrac{(1-D_i)(Y_i-g_0)}{1-m(X_i)}
Reads fromNot specified Feeds intoNot specified
Key code
dml_irm = dml.DoubleMLIRM(dml_data, ml_g, ml_m).fit()

Reference / docs ↗

Discussion on this step (0)
StatsOtterDiscussion starter · Editorial note

Before using this step, make its assumptions and its output explicit. A useful peer note explains what you would check, what could go wrong, or what would change your interpretation.

Questions to explore
  1. Which assumption matters most here, and what evidence could challenge it?
  2. What would you check before passing this output to the next step?

Peer discussion

  • Bring your experience, a question, or a different perspective.
02
Data contract

Inputs & data

Outcome Y, binary treatment D, covariates X you'd target on (and a cost, implicitly).

Show data format & exampleHide example

Format — one row per unit: y, d, targeting covariates X.

  y     d   x1    x2
 1.2    1   0.4  -1.1
-0.3    0  -0.1   0.6
03
Read the evidence

Results & interpretation

2 figures Workflow discussion 0
01FigureThe learned policy: a shallow decision tree splitting units into treat / don't-treat.
02FigureWhere the rule treats — the decision regions in covariate space.

Figures reproduced from DoubleML — Bach, Chernozhukov, Kurz & Spindler — unofficial community showcase; all credit to the original authors.

Context & interpretation

⚠️ Unofficial community showcase of a DoubleML example. Not affiliated with the authors; figures are from the public documentation. All credit to Bach, Chernozhukov, Kurz & Spindler.

Turn debiased CATEs into a rule: fit a shallow, readable decision tree that maximises the doubly-robust policy value.

Peer notes

Discuss the workflow (0)

  • No comments yet — start the conversation.
IN THE MARGINS

Peer discussion