Evaluating the impact of modelling Omicron strain dynamics on short-term COVID-19 forecast performance
This repository contains the code, and analysis used to evaluate the impact of modelling Omicron strain dynamics on short-term COVID-19 forecast performance. In addition it also contains the write up of this work. See the documentation for further details.
If making use of the results of this analysis or reusing the analysis pipeline please cite:
If making using of the models evaluated in this analysis please also
cite forecast.vocs
:
Document | Purpose |
---|---|
Summary | A summary of this work. |
Paper | The academic paper write up of this work. |
Supplementary information | The supplementary information for the write up of this work. |
Project README | Overarching project README. Includes links to resources, a summary of key files, and reproducibility information. |
Analysis pipeline | The targets based analysis pipeline. |
Analysis archive | An archived version of the _targets directory. Download using get_targets_archive() . |
Data | Documentation for input data and summarised output from the analysis. |
bin | Documentation for orchestration of nowcast estimation, publishing, and archiving. |
News | Dated development notes. |
epinowcast | The documentation for forecast.vocs the R package used to implement the models evaluated here. |
Folder/File | Purpose |
---|---|
writeup |
Summary paper and additional supplementary information as Rmarkdown documents. |
_targets.R |
Analysis workflow. Combines separate sections from_targets_r . |
R |
R functions used in the analysis and for evaluation. |
data |
Input data and summarised output generated by steps in the analysis. |
analyses |
Ad-hoc analyses not part of the overarching workflow. |
.devcontainer |
Resources for reproducibility using vscode and docker . |
All dependencies can be installed using the following,
remotes::install_dev_deps()
If cmdstanr
has not been installed previously then stan may need to be
installed. This can be done using the following,
cmdstanr::install_cmdstan()
Alternatively a docker
container
and
image
is provided. An easy way to make use of this is using the Remote
development extension of vscode
.
This analysis in this repository has been implemented using the
targets
package and associated
packages. The workflow is defined in
_targets.md
and can be explored interactively using
_targets.Rmd
Rmarkdown
document. The workflow can be visualised as the following
graph.
This complete analysis can be recreated using the following (note this may take quite some time even with a fairly large amount of available compute),
bash bin/update-targets.sh
Alternative the following targets
functions may be used to
interactively explore the workflow:
- Run the workflow sequentially.
targets::tar_make()
- Run the workflow using all available workers.
targets::tar_make_future(workers = future::availableCores())
- Explore a graph of the workflow.
targets::tar_visnetwork(targets_only = TRUE)
Watch the workflow as it runs in a shiny
app.
targets::tar_watch(targets_only = TRUE)
Objects from the workflow can be loaded into an interactive session using the following,
targets::tar_load("<target>")
To use our archived version of the interim results (and so avoid long run times) use the following to download it. Note that this process has not been rigorously tested across environments and so may not work seamlessly).
source(here::here("R", "targets-archive.R"))
get_targets_archive()