← Back to all sparks
S

serofoi

ANALYTICS
Velocity0.0

Estimates the Force-of-Infection of a given pathogen from population based sero-prevalence studies

serofoi grew a serosurvey simulator alongside the force-of-infection models it was built to fit.

epiverse-traceserologyforce-of-infectionbayesian-inferencesimulation
Current state
serofoi estimates the force of infection from serological survey data using Bayesian serocatalytic models fitted through Stan. Beyond fitting it now simulates serosurveys — specifying a model and a survey design and generating the data such a survey would produce. The most recent release is visualisation and naming work.
Where it's heading
The package moved from fitting-only to a fit-and-simulate pair. 0.1.0 added simulation from time- or age-varying force-of-infection trends and simplified the fitted object down to a Stan fit; 1.0.2 broadened simulation into full serosurvey generation with its own vignette. 1.0.3 then spent its effort on naming consistency and plotting options, which is what a package does once its scope is set.
Prediction
With simulation and fitting both in place, the natural next step is tooling that closes the loop between them — recovery checks or study-design guidance built on simulated surveys.

Recent moves

  1. 1y ago

    Constant FoI plots, r-hat plotting and shorter parameter names

    Visualisation functions gain plot_constant and x_axis arguments so constant force-of-infection estimates and their r-hat values can be plotted without ambiguity about the axis, and a round of renaming shortens the simulation module's long parameter names.

    View source ↗
  2. 1y ago

    Serological surveys can now be simulated end to end

    Simulation expands from force-of-infection trends to whole serosurveys, separating the serocatalytic model from the survey design so each can be specified independently. A dedicated vignette accompanies it.

    View source ↗
  3. 2y ago

    Simulation functions added; fitted output simplified to a Stan fit

    Data can be simulated from time- or age-varying force-of-infection trends and grouped into serosurveys. fit_seromodel() stops returning a bundled list and returns the Stan fit object directly, which breaks code reaching into the old structure.

    View source ↗
  4. 3y ago

    First release: three force-of-infection models and the core modules

    The initial release ships the data preparation, modelling and visualisation modules together with constant, time-varying normal and normal-log force-of-infection models.

    View source ↗