Skip to content

Examples

Description

Every example below, synthetic or real, ends the same way: one line, effector.explain(...), and the self-contained HTML page it returns. The 📄 link in the last column is that page. Read the notebook to learn how the analysis is built; open the report to see the whole notebook summarized in a single file you could email to someone.

Synthetic examples

The model is known, so every effect has a closed form to check against.

# Example Report
1(a) Regional effects, known black-box function: same as in the REPID paper 📄 PDP
1(b) Regional effects, unknown black-box function: the same data, now explained through a fitted neural network 📄 PDP
2(a) A conditional interaction: global effects 📄 PDP
2(b) A conditional interaction: heterogeneity 📄 PDP
2(c) A conditional interaction: regional effects 📄 PDP
3 A general form interaction: \(x_1 x_2^2\), where no single split can undo the heterogeneity 📄 PDP
4 A conditional interaction with four regions 📄 PDP
5 Categorical features: ordinal and nominal, as the feature of interest and as split candidates 📄 PDP
6 One-click explanations: importance, explain and the Report, on a model whose answer we know 📄 PDP

Real examples

The model is a black box, so the report is the whole story.

# Example Report
1 Bike sharing: the canonical walkthrough, hour of day against working day 📄 PDP
2 California housing: eight correlated features, explained with RHALE 📄 RHALE
3 California housing with TabPFN: a foundation model is just another callable none, see below
4 NO2 concentration: traffic, wind and temperature on a small, noisy dataset 📄 PDP
5 Medical costs: one interaction, two claimants; the decision sequence on the smoker × bmi classic 📄 PDP
6 Airfoil self-noise: when half the model is one interaction, a single split recovers +28% of explained variance 📄 PDP
7 Adult census income: explaining a classifier's probability, a four-split decision sequence 📄 PDP
Why example 3 has no report

TabPFN needs a TABPFN_TOKEN, so that notebook cannot be executed in a clean checkout and its report cannot be regenerated with the others. Run it with your own token and report.to_html(...) produces the same page.