cleverly.datasets.make_nonlinear_ate#
- cleverly.datasets.make_nonlinear_ate(n: int = 1000, *, seed: int | Generator | None = None, backend: Literal['pandas', 'polars'] | str | None = None) tuple[Any, dict[str, float]][source]#
Nonlinear nuisance functions and a heterogeneous effect.
This is the process that exercises double robustness: a linear model is wrong for both
gandQbar, the treatment effect varies withW, and soate,attandatcall differ. An estimator that quietly assumes a constant effect will fail here.The propensity lies in
[0.05, 0.95](strong positivity), so the ATE has a finite efficiency bound.nonlinear_dgp()states the law and why the bound is needed.- Parameters:
- Returns: