Skip to content

Bundibugyo Ebola virus — Bayesian delay-distribution and stratified CFR estimation from the 2012 Isiro outbreak

Docs

A Julia + Turing + CensoredDistributions.jl re-analysis of the only publicly accessible Bundibugyo ebolavirus (BDBV) line list — the 2012 Isiro outbreak in Haut-Uélé, DRC, as deposited by Rosello et al. 2015 in eLife — following the best-practice checklist of Charniga et al. 2024 in PLOS Comput Biol.

🌐 Analysis walkthrough — full tables, figures, and diagnostics regenerated from the current model on every push to main (HTML)

⚠️ Limitations — read before using these estimates: data, model, inference, and generalisability caveats (HTML)

Charniga 2024 checklist — best-practice item-by-item compliance table (HTML)

📦 Posterior CSV and figuresmain-latest rolling release bundle

📖 Model description — priors, likelihood, inference (HTML)

📑 API reference — exported functions (HTML)

Headline estimates

All four delays fitted as Gamma (WAIC-selected, doubly censored). Posterior median and mean with 95% credible intervals, alongside the Rosello et al. 2015 Table 5 mean (SD) for direct comparison — empirical summary statistics of the same data after their 30-day cap on the raw delays.

DelaynGamma median (95% CrI), daysGamma mean (95% CrI), daysRosello mean (SD)
Onset → admission402.96 (2.06 – 4.01)4.03 (3.08 – 5.46)4.00 (3.27)
Admission → death226.42 (4.47 – 8.70)7.60 (5.62 – 10.42)7.59 (5.52)
Admission → discharge155.33 (2.82 – 8.87)7.70 (4.81 – 13.81)8.00 (6.56)
Onset → notification3811.07 (6.43 – 17.39)19.82 (13.64 – 29.94)8.83 (8.29)

Rosello's onset → notification fit applied a 30-day cap; without it our posterior mean runs roughly twice as long. See the analysis walkthrough for the full Gamma summary, posterior predictive checks and convolved marginals. Per-draw shape, scale and SD for each atomic delay are in posterior_gamma.csv of the main-latest release.

Running

bash
# Headline run with Gamma (default after WAIC selection)
julia --project=. -t auto -m BdbvLinelist -- -f gamma

# Compare all three families via WAIC
julia --project=. -t auto -m BdbvLinelist -- --compare

# From the REPL
julia> using BdbvLinelist
julia> chn, post, diag      = analyse(family = :gamma)
julia> results              = compare_families()
julia> sensitivity_results  = sensitivity()
julia> save_figure(plot_ppc(chn, build_data(load_linelist()), :gamma), "figures/ppc_gamma.png")

A minute or two per family on a laptop. Posterior CSV is written to output/ and figures to figures/ locally; both directories are gitignored. The rolling main-latest release publishes the canonical posterior CSV and figure bundle regenerated on every push to main, and the docs site renders the same figures inline.

Data provenance

data/linelist.csv is the Bundibugyo subset (n = 52) of the aggregated seven-outbreak DRC line list (n = 996) published as supplementary file 1 of:

Rosello A, Mossoko M, Flasche S, et al. Ebola virus disease in the Democratic Republic of the Congo, 1976–2014. eLife 2015;4:e09015. doi:10.7554/eLife.09015

Licensed CC-BY 4.0. The five admission-date encoding outliers (−89, −5, −4, −1, 328720 days from onset) are programmatically set to missing during loading. One notification-date outlier (delay of −62 days) is similarly dropped. No other modifications.

Authors

Sebastian Funk and Sam Abbott (London School of Hygiene & Tropical Medicine).

License

MIT (see LICENSE).