THE RESULT
What the data shows
The largest computed metric is 0.3327 for (0.122, 0.184]; the smallest is 0.04992 for (0.0951, 0.102]. Metric: absolute_gap (Absolute calibration gap).
These are diagnostics on a previously defined test set, not a new independent experiment.

| bin | n | predicted probability | observed rate | absolute gap |
|---|---|---|---|---|
| (0.00081, 0.0312] | 905 | 0.02366 | 0.1867 | 0.1631 |
| (0.0312, 0.0388] | 904 | 0.0345 | 0.1648 | 0.1303 |
| (0.0388, 0.0561] | 904 | 0.04717 | 0.2754 | 0.2283 |
| (0.0561, 0.0736] | 912 | 0.0635 | 0.3191 | 0.2556 |
| (0.0736, 0.0951] | 948 | 0.08717 | 0.1899 | 0.1027 |
| (0.0951, 0.102] | 859 | 0.09909 | 0.149 | 0.04992 |
| (0.102, 0.122] | 898 | 0.1096 | 0.2539 | 0.1443 |
| (0.122, 0.184] | 904 | 0.1441 | 0.4768 | 0.3327 |
| (0.184, 0.41] | 904 | 0.2896 | 0.6073 | 0.3177 |
| (0.41, 0.926] | 905 | 0.6336 | 0.5326 | 0.101 |
THE METHOD
From source to answer
Reliability table for a fixed logistic model, with equal-frequency probability bins.
The Python source exposes this study’s transformations. The complete project download includes shared preparation and evaluation routines.
EVALUATION
How the result was checked
First 80% of ordered observations train; final 20% test.
Fixed models; default decision threshold; no holdout tuning.
Target and input features
Target: subscribed
Inputs: contact, month, day, campaign, pdays, previous, poutcome
THE NEXT DECISION
What follows from the finding
Check calibration on new campaigns before interpreting probabilities as expected response rates.
Where the conclusion stops
Observational marketing records do not identify campaign uplift. Month and row order are not precise timestamps; repeated-client identifiers are unavailable. Models are research diagnostics, not financial eligibility or automated contact decisions.
Related studies may reuse observations or holdouts. These are historical analyses; associations and backtests do not demonstrate commercial impact. Further model tuning needs new, untouched evaluation data.