Gostic 2020 - Instantaneous vs Case Reproductive Number and the Three Estimators
Summary
has two definitions. The instantaneous number uses only data before and suits real-time work; the case (cohort) number looks forward and suits retrospective analysis. Cori et al. estimates the former with a Gamma posterior; Wallinga-Teunis estimates the latter; Bettencourt-Ribeiro approximates the former via the growth rate but assumes an exponential generation interval.
Overview
Synthetic data came from a deterministic or stochastic SEIR model with , then 0.8, then 1.15 (intervention and partial relaxation), the series truncated at to mimic real time. Generation interval: Gamma(shape 2, rate 1/4 per day, i.e. sum of two exponential stages each with mean 4 days; mean 8 days; the extraction of the PDF reads “rate of 14”). All infections were assumed observed with no delay, a 1-day smoothing window, and no parameter uncertainty. Cori and Wallinga-Teunis were run with EpiEstim; Bettencourt-Ribeiro was recoded in Stan.
Main Content
Instantaneous reproductive number
The expected number of new infections at divided by the total infectiousness of the infected population at . For a renewal process with incidence and intrinsic generation interval (probability that days separate infection of an index case and its secondary case):
Case (cohort) reproductive number
The expected number of secondary infections that an individual infected (or symptomatic) at will eventually cause. It is a convolution of the instantaneous number with the generation interval: , so it depends on the future.
Cori et al. estimator (posterior)
With a Gamma prior on and a sliding window of days ending at , the posterior is
Only the generation interval is assumed. (Posterior form is from Cori et al. 2013, not reproduced in the Gostic text; stated here as the standard result, flagged as from memory.)
Wallinga-Teunis
The probability that case infected case is ; case ‘s individual reproductive number is ; the case reproductive number at is the mean of over individuals infected at .
Bettencourt-Ribeiro
Approximates from the exponential growth rate and mean generation time via an SIR-based relation (Gostic’s Eq. 3, in the exponential-GI case), with a Gaussian process for efficient Bayesian inference. It implicitly assumes an exponential generation interval, so with a Gamma(2) SEIR it underestimates when the truth is well above 1.
Findings (Fig 2, S1-S2).
- Cori tracks the instantaneous accurately, including abrupt changes and when the series ends while is rising or falling.
- Wallinga-Teunis leads the instantaneous (by roughly 8 days, the mean generation interval) and without right-truncation adjustment underestimates at the end of the series because unobserved future infections are missing terms in the weighted sum. Shifting it back by the mean generation interval roughly recovers the instantaneous curve.
- Cori overestimates early because infections before the first observed date are missing from the denominator.
- Bettencourt-Ribeiro: biased when the true is far from 1; but the GP penalty gives smoother estimates (useful when reporting noise dominates).
Examples
Cori posterior in numbers
Daily incidence last 3 days , , prior Gamma(1, scale 5). Posterior shape , rate ; mean , sd .
import numpy as np
from scipy import stats
def cori(I, w, tau=7, a=1, b=5):
I=np.asarray(I,float); lam=np.array([sum(w[s-1]*I[t-s] for s in range(1,min(len(w),t)+1)) for t in range(len(I))])
t=len(I)-1; sl=slice(t-tau+1,t+1)
return stats.gamma(a+I[sl].sum(), scale=1/(1/b+lam[sl].sum()))
w=stats.gamma(2,scale=4).pdf(np.arange(1,21)); w/=w.sum()
print(cori(np.exp(0.05*np.arange(60)),w).mean()) # growing epidemic -> R>1Connections
Next: Gostic 2020 - Generation Interval and the Renewal Equation. PyMC form for E38: as a latent random walk with pm.Poisson("I", mu=R_t*Lam_t), where is a triangular convolution of the nowcast incidence (untested sketch).
See Also
Gostic 2020 - Practical Considerations for Measuring Rt - Overview · Linear-Gaussian State-Space Models