A comparison of three methods to determine R0, in Germany
By: Falk Langhammer
Tags: Data Science, Flatten The Curve, Coronavirus, Germany, Charts

The three methods differ in a few variables:

RKI and my model use a relatively simple math, using a quotient of averaged new cases. The Helmholtz-model is a modified SIR model. RKI uses (both reported and extrapolated) dates of infection, my model and Helmholtz use number of reported confirmed cases only. Fot this reason, RKI can deliver less time-shifted etstimates for R0 (the more the curve is to the left above, the less lag there is for the reported R0 value). I use data from JHU (which is an aggregation from various sources with an attempt to report cases early and once). RKI and Helmholtz use officially reported data as delivered by RKI. They may be reported back by a few days which is why RKI (MR=-3 days) and Helmholtz (MR=-2 days) don’t use the Most Recent days (MR delay). My model may use new data immediatetely.

The data of RKI and my model are correlated when time-shifted against each other. The maximum correlation is at 9 days, but good correlation is achieved for shifts between 4 and 10 days (varying between 0.92 and 0.96 in that range). As said in the article, I use 7 days as best shift. Which isn’t only the middle; but also subjectively the most convincing match.

The data of Helmholtz is better correlated to my model than the original RKI model. This is important to note as the Helmholtz model is used by many media outlets in Germany. Mainly, because it contains data for R0 for each federal state in Germany separately. And because it contains a forecast.

However, the Helmholtz model seems to have an additional delay of about 4 days, compared to my model, it appears. Which would be a total delay of 23 days to the actual infection transmission activity. Where I think 2 days are due to the most recent cutoff (MR); and another 2 days to the slower pace the modified SIR model adapts to changes (it seems to yield more time averaging). That’s my guess. My observation just is that it has more lag.

Moreover, the Helmholtz model seems to overshoot in predicting R. Overall, it seems to compute ~1.5*R0 rather than R0. Of course, R0 does also depend on the definition of the generation time G (which RKI and I chosse to be 4 days). Any other value choosen here leads to a factor. Therefore, the generation time G should be communicated with the model. The Helmholtz model uses an incubation period of 5.2 days which is consistent with G=4 days. Therefore, I don’t know where the discrepancy is coming from. The scale coming out of the Helmholtz model doesn’t seem to be right. I’d double check it.

Summary for reporting delays, give or take 2 days:

RKI = ~12 days

My model = ~19 days

Helmholtz model = ~23 days

Conclusion

While each of the three methods have their respective advantages, overall, I still like the results of my model a lot. It lags a few days behind the RKI model. But delivers robust data with good timely resolution. The Helmholtz model may be best suited for situations with only few cases where actual case numbers have too much noise. Like for cluster spread or regional monitoring.

Additional References

[RKI example] www.rki.de/DE/Content/Infekt/EpidBull/Archiv/2020/17/R-Beispielrechnung.html

[Helmholtz] gitlab.com/simm/covid19/secir/-/wikis/Report

[Helmholtz data source] npgeo-corona-npgeo-de.hub.arcgis.com/datasets/dd4580c810204019a7b8eb3e0b329dd6_0/data