Monitoring der Falldynamik in Berlin mit Open Data

Das Open Data Portal der Stadt Berlin stellt die gemeldeten Corona-Fallzahlen nach Bezirk offen zur Verfügung. Sehr gut! Um die Lage im Auge zu behalten, habe ich ein kleines Skript geschrieben um die Daten zu visualisieren und einige Statistken zu berechnen, die mich interessieren. Gerade vor dem Hintergrund der erneut getroffenen Maßnahmen finde ich es wichtig, eine Heuristik zur Hand zu haben, um zu berurteilen, inwiefern die Einschränkungen, die wir uns auferlegen, dazu beitragen, das Infektionsgeschehen in userer Stadt zu bremsen. Eigentlich war das Skript nur für meinen persönlichen Gebrauch gedacht, aber vielleicht kann noch jemand etwas damit anfangen. Vielleicht beschreibe ich einfach mal die Funktionen.

Kurz gesagt lädt das Skript die Daten von der Webseite der Lageso herunter, auf deren Basis Grafiken mit verschiedenen Informationen erstellt werden können.

plot_cumsum_raw(x)

Diese Funktion stellt einfach die kumulierten Fallzahlen dar. In nachfolgender Abbildung geschieht dies für ganz Berlin, eine Visualisierung auf Bezirksebene ist ebenfalls möglich.

Abbildung 1. Kumulierte Fallzahlen in Berlin Stand 1.11.2020
plot_new_cases(x)

Diese Funktion stellt die neu gemeldeten Fälle pro Tag dar.

Abbildung 2. Neu gemeldete Fälle pro Tag in Berlin. Stand 1.11.2020

Relativ deutlich erkennbar sind die zyklischen Schwankungen, die mit dem Meldesystem zu tun haben. Eine Technik zur Glättung solcher Kurven besteht in der Berechnung eines gleitenden Mittelwertes über ein bestimmtes Zeitfenster.

plot_x_day_mean_cases(x)

Diese Funktion berechnet x-Tages-Mittelwerte und stellt sie im zeitlichen Verlauf dar. Im Folgenden wird ein 7-Tages-Fenster verwendet, aber auch andere Intervalle sind denkbar.

Abbildung 3. 7-Tages Mittelwert der gemeldeten Fälle in Berlin. Stand: 1.11.2020

Die Abbildung entspricht derjenigen, die auch von der Berliner Senatskanzlei im Corona-Lagebericht unter dem Punkt “Zeitlicher Verlauf” zur Verfügung gestellt wird. Nebenbei bemerkt, ich finde die Seite gut gemacht und informativ. Bei einer Betrachtung am 1.11.2020 gab es in den vorhergehenden 7 Tagen im Schnitt 895 gemeldete Fälle pro Tag. Diese Zahl kann analog zur physikalischen Geschwindigkeit verstanden werden (Fälle/Tag, anstatt km/h). Interessant ist nun, wie sich die Beschleunigung der Fallzahlen beschreiben lässt. Um bei der physikalischen Analogie zu bleiben, ließe sich die Beschleunigung im diskreten Fall über eine einfache Geschwindigkeitsdifferenz berechnen. Allerdings hat ein solcherart gebildeter Index ein ähnliches Problem, wie der R-Wert: er ist relativ anfällig gegenüber Schwankungen. Daher wurde die Kurve über gefensterte Regressionen weiter geglättet.

plot_x_day_smoothed_cases(x)

Diese Funktion gibt die weiter geglätteten Fallzahlen aus. Die jeweiligen Datenpunkte sind die geschätzten Steigungskoeffizienten von Regressionen in den jeweiligen 7-Tages Intervallen.

Abbildung 4. Regressionsgeglättete, neue Fälle pro Tag (7-Tages Intervall). Stand 1.11.2020.

Hierbei muss allerdings beachtet werden, dass diese Kurve ein Fallgeschehen abbildet, dass – abhängig von gewählten Intervall – einige Tage zurückliegt.

Zur Bewertung der Beschleunigung bzw. der Bremsung des Fallgeschehens werden nun Differenzen der geglätteten, neuen Fälle pro Tag berechnet.

plot_acc(x)

Diese Funktion bildet die Beschleunigung ab.

Abbildung 5. Beschleunigung der neuen Fälle pro Tag basierend auf regressionsgeglätteten Fallzahlen in 7-Tages Intervallen

Eine Beschleunigung von 0 bedeutet, dass die Fallzahlen von Tag zu Tag linear wachsen. Eine Beschleunigung größer 0 bedeutet ein beschleunigtes Wachstum und eine Beschleunigung von kleiner 0 bedeutet ein gehemmtes Wachstum: da müssen wir hin. In dieser Abbildung finde ich interessant, dass Mitte März deutlich “auf die Bremse” getreten wurde. Zwischen Mitte April und September wurde zögerlich “Gas gegeben” und wieder gebremst, bis seit September ein deutlicher Zuwachs an Beschleunigung zu verzeichnen war, der sich natürlich in immer schneller wachsenden Fallzahlen niedergeschlagen hat. An dieser Stelle ist psychologisch interessant, dass diese Kurve in gewisser Weise auch das Resultat unseres kollektiven Verhaltens ist. Individuelles Einzelverhalten, was darauf ausgelegt ist, eine eigene Infektion und die Infektion anderer zu vermeiden, sollte in der Summe des Einzelverhaltens in einem Rückgang der Beschleunigung und einer Schrumpfung der Fallzahlen münden. Aktuell zeigt sich, dass in den letzten Tagen zumindest die Beschleunigung nicht weiter ansteigt. Wichtig ist es nun, die Kurve unter Null zu drücken. Und dazu kann jede und jeder beitragen.

Was ich damit sagen möchte ist, dass wir der Situation nicht hilflos ausgeliefert sind, sondern durch unser kollektives Verhalten einen Einfluss auf die Fallzahlen ausüben können. Das Gewinnen gegen das Virus ist ein Team-Sport. Ironischerweise heißt das in bestimmten Fällen auch einfach gemeinsam Abstand halten.

Leave a Reply

Your email address will not be published. Required fields are marked *