Published September 26, 2023
| Version v1.4.0
Software
Open
epiforecasts/EpiNow2: 1.4.0 release
Creators
- 1. @epiforecasts @cmmid
- 2. London School of Hygiene & Tropical Medicine
- 3. UK Met Office (UKMO)
- 4. Amazon Web Services (AWS)
- 5. University of Trento
- 6. Pacific Community | Communauté de Pacifique
- 7. London School of Hygiene and Tropical Medicine
- 8. ETH Zürich
- 9. @actions
- 10. Epicentre MSF
Description
This release contains some bug fixes, minor new features, and the initial stages of some broader improvement to future handling of delay distributions.
Breaking changes- The external distribution interface has been updated to use the
dist_spec()
function. This comes with a range of benefits, including optimising model fitting when static delays are used (by convolving when first defined vs in stan), easy printing (usingprint()
), and easy plotting (usingplot()
). It also makes it possible to use all supported distributions everywhere (i.e, as a generation time or reporting delay). However, while for now backwards compatibility has been ensured this update will break most users' code eventually as the interface has changed. See the documentation fordist_spec()
for more details. By @sbfnk in #363 and reviewed by @seabbs.
- Model description has been expanded to include more detail. By @sbfnk in #373 and reviewed by @seabbs.
- Moved to a GitHub Action to only lint changed files. By @seabbs in #378.
- Linted the package with a wider range of default linters. By @seabbs in #378.
- Added a GitHub Action to build the README when it is altered. By @seabbs.
- Added handling of edge case where we sample from the negative binomial with mean close or equal to 0. By @sbfnk in #366 and reviewed by @seabbs.
- Replaced use of nested
ifelse()
anddata.table::fifelse()
in the code base withdata.table::fcase()
. By @jamesmbaazam in #383 and reviewed by @seabbs. - Reviewed the example in
calc_backcalc_data()
to callcalc_backcalc_data()
instead ofcreate_gp_data()
. By @jamesmbaazam in #388 and reviewed by @seabbs. - Improved compilation times by reducing the number of distinct stan models and deprecated
tune_inv_gamma()
. By @sbfnk in #394 and reviewed by @seabbs. - Changed touchstone settings so that benchmarks are only performed if the stan model is changed. By @sbfnk in #400 and reviewed by @seabbs.
- pak is now suggested for installing the developmental version of the package. By @jamesmbaazam in #407 and reviewed by @seabbs. This has been successfully tested on MacOS Ventura, Ubuntu 20.04, and Windows 10. Users are advised to use
remotes::install_github("epiforecasts/EpiNow2")
ifpak
fails and if both fail, raise an issue. dist_fit()
'ssamples
argument now takes a default value of 1000 instead of NULL. If a suppliedsamples
is less than 1000, it is changed to 1000 and a warning is thrown to indicate the change. By @jamesmbazam in #389 and reviewed by @seabbs.- The internal distribution interface has been streamlined to reduce code duplication. By @sbfnk in #363 and reviewed by @seabbs.
- A small bug has been fixed where the seeding time was too long. When a single delay is used this shortens the seeding time by one day and when more delays are used it shortens the seeding time by n days where n is the number of delays used e.g. for two parametric delays it's two days. By @sbfnk in #413 and reviewed by @seabbs.
- Some tuning was done to speed up the renewal model. By @sbfnk in #416 and reviewed by @seabbs.
- An approximation of the negative binomial by the Poisson at low levels of overdispersion was disabled as it led to parameter identification issues. By @sbfnk in #432 and reviewed by @seabbs.
- Reduced verbosity of tests. By @sbfnk in #433 and reviewed by @seabbs.
- Updated code style in response to lintr warnings. By @sbfnk in #437 and reviewed by @seabbs.
- Fixed an edge case breaking summary output. Reported by @jrcpulliam, fixed by @sbfnk in #436 and reviewed by @seabbs.
- Added content to the vignette for the estimate_truncation model. By @sbfnk in #439 and reviewed by @seabbs.
- Added a feature to the
estimate_truncation
to allow it to be applied to time series that are shorter than the truncation max. By @sbfnk in #438 and reviewed by @seabbs. - Changed the
estimate_truncation
to use thedist_spec
interface, deprecating existing optionsmax_trunc
andtrunc_dist
. By @sbfnk in #448 and #452 and reviewed by @seabbs. - Added a
weigh_delay_priors
argument to the main functions, allowing the users to choose whether to weigh delay priors by the number of data points or not. By @sbfnk in #450 and reviewed by @seabbs.
- Added a link to the recent CSTE workshop on using
EpiNow2
to the case studies vignette. By @seabbs in #441 and reviewed by @sbfnk.
- Expand model description. by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/373
- Linting by @seabbs in https://github.com/epiforecasts/EpiNow2/pull/378
- fix errors introduced in #378 by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/380
- allow edge case of negative binomial with 0 mean by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/366
- add Seb orcid by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/386
- Substitute nested
ifelse
withdata.table::fcase()
by @jamesmbaazam in https://github.com/epiforecasts/EpiNow2/pull/383 - Revise the examples for
create_backcalc_data()
by @jamesmbaazam in https://github.com/epiforecasts/EpiNow2/pull/388 - reduce the number of stan models by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/394
- Amend contribution guide by @jamesmbaazam in https://github.com/epiforecasts/EpiNow2/pull/406
- limit touchstone to stan model changes by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/400
- change the default value of sample in
dist_fit()
by @jamesmbaazam in https://github.com/epiforecasts/EpiNow2/pull/389 - Update install info by @jamesmbaazam in https://github.com/epiforecasts/EpiNow2/pull/407
- implement
dist_spec
interface by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/363 - shorten seeding time by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/413
- speed up generation of infections by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/416
- update R CMD check action by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/425
- qualify internal functions in tests by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/426
- don't defer negative binomial to Poisson at low levels of overdispersion by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/432
- disable verbosity for failing chains by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/433
- fix logmean bound by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/435
- style change in response to lintr warnings by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/437
- fix regional summary in case of 0/0 by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/436
- update estimate truncation vignette by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/439
- allow snapshots shorter than trunc_max by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/438
- Issue 440: Added CSTE workshop as a case study by @seabbs in https://github.com/epiforecasts/EpiNow2/pull/441
- bug fix: make simulated delay mean unbounded by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/446
- move synthetic validation to macos by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/445
- Fix 442 by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/443
- use
delay_lp
inestimate_truncation
by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/448 - move prior weights to model arguments by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/450
- make estimate_truncation return a dist_spec by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/452
- avoid very narrow initial truncation distributions by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/454
- Improve deprecation by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/455
- Update deprecated syntax for future rstan compatibility by @andrjohns in https://github.com/epiforecasts/EpiNow2/pull/453
- Prepare 1.4.0 CRAN release by @sbfnk in https://github.com/epiforecasts/EpiNow2/pull/456
- @jamesmbaazam made their first contribution in https://github.com/epiforecasts/EpiNow2/pull/383
- @andrjohns made their first contribution in https://github.com/epiforecasts/EpiNow2/pull/453
Full Changelog: https://github.com/epiforecasts/EpiNow2/compare/v1.3.5...v1.4.0
Files
epiforecasts/EpiNow2-v1.4.0.zip
Files
(5.1 MB)
Name | Size | Download all |
---|---|---|
md5:b08001e636a8c501848562a69076325d
|
5.1 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/epiforecasts/EpiNow2/tree/v1.4.0 (URL)