| name | running-placebo-analysis |
| description | Performs placebo-in-time sensitivity analysis with hierarchical null model and optional Bayesian assurance. Use when checking model robustness, verifying lack of pre-intervention effects, or estimating study power. |
Running Placebo Analysis
Executes placebo-in-time sensitivity analysis using the core PlaceboInTime check. Builds a hierarchical Bayesian model of the "status quo" (no-effect) distribution, then compares the actual intervention effect against that learned null. Optionally computes Bayesian assurance (operating characteristics).
Workflow
- Fit your experiment: Run a CausalPy experiment (ITS, SC) with a PyMC model.
- Configure the check: Create a
PlaceboInTime with n_folds, optional experiment_factory, and optional assurance parameters.
- Run: Call
.run(experiment) (standalone) or use within a Pipeline + SensitivityAnalysis.
- Evaluate: Inspect the null distribution (
theta_new), p_effect_outside_null, and optional assurance results.
Key Concepts
- Placebo-in-time: Simulating an intervention at a time when none occurred to check if the model falsely detects an effect.
- Hierarchical null model: A Bayesian model fitted on fold-level summaries that characterises the distribution of effects under no intervention.
- Assurance: Bayesian operating characteristics — the probability of correctly detecting a real effect given your expected-effect prior and ROPE.
- Factory Pattern: Decouples the placebo logic from the specific CausalPy experiment type.
References