Big Data for little Martin

Auf corona-blog.net wird lang und breit erklärt, dass man "Spezialwissen" bräuche, um an die Daten zu kommen und diese zu analyieren. Auch der "große Aufwand", mit dem das alles verbunden gewesen sei, wird bestaunt.

Tatsächlich ist alles ganz einfach.

Die Rohdaten

In der Tat kann man auf der RKI-Webseite nur die tagesaktuellen Datensätze herunterladen. Freundlicherweise stellen aber fleißige Sammler auf Github die Datensätze jedes einzelnen Tages seit Pandemiebeginn zur Verfügung, z.B. hier oder hier.
Einfach alle herunterladen, entpacken und alle Einzeldatensätze in einen Ordner packen:
 

Das Sterbedatum

Das RKI erklärt hier genau, wie die Datensätze zu verstehen sind. Das Sterbedatum ist nicht enthalten, aber indirekt zumindest das Meldedatum des Sterbefalls. Denn für jeden einzelnen Corona-Toten gilt: nur im Datensatz eines einzigen Tages enthält die Spalte "NeuerTodesfall" den Wert "1".
Wenn man also die Datensätze jedes einzelnen Tages durchsieht und alle Zeilen mit dem Wert "1" in der Spalte "NeuerTodesfall" herausfiltert, erhält man die an diesem Tag gemeldeten Todesfälle

Nur haben wir mit Stand 1. April 2021 ganze 370 einzelne Datensätze durchzusehen. Klingt viel, aber wozu gibt es Computer?

Big Data

Es bietet sich offensichtlich an, eine Softwarelösung für diese Aufgabe zu verwenden. 
 
Wenn es kostenlos sein soll, kann man beispielsweise Power BI von Microsoft nutzen. Excel geht auch (und zwar beinahe auf identische Weise), ist aber nicht kostenlos. Python würde sich ebenfalls anbieten, aber wer Python kann, dem brauche ich sicher nicht zu erklären, wie es geht.

Bleiben wir also bei Power BI. Auf dem Startbildschirm von Power BI angekommen, gibt es zwei Möglichkeiten, die Datensätze einzulesen:
  1. Über das Menüband, Daten abrufen, Weitere; oder
  2. Über klicken auf "Daten aus einer anderen Quelle abrufen" direkt auf der Startseite
(In Excel nennt sich die entscheidende Funktion "Power Query", und die ist je nach Excel-Version unter "Daten" oder in einem extra Tab zu sehen - der Weg zum Ziel ist danach der Gleiche).
 
Im nächsten Fenster bitte "Ordner" auswählen und auf "Verbinden" klicken.
 


Dann auf "Durchsuchen" klicken und den Ordner auswählen, in dem die Rohdaten sind. WICHTIG: Im Ordner dürfen außer den Rohdaten keine anderen Dateien liegen!
 
Im folgenden Fenster unten auf den kleinen Pfeil neben "Kombinieren" klicken und "Daten kombinieren und transformieren" auswählen.
Power BI erkennt automatisch die Tabellenstruktur, das folgende Fenster kann einfach mit "Ok" weggeklickt werden. Es öffnet sich ein neues Fenster, das den gesamten Bildschirm einnimmt: der "Power-Query-Editor".

Hier suchen wir die Spalte "NeuerTodesfall" und klicken auf den kleinen Pfeil rechts davon, um nach neuen Todesfällen zu suchen. Wie erwähnt, steht eine "1" für einen neuen Todesfall, das ist also der Wert, den wir hier filtern wollen. Ich habe auch noch die "-1" mit reingenommen, diese steht für Korrekturen von bereits gemeldeten Todesfällen (also wenn derjenige doch nicht gestorben ist). Nach Auswahl bitte auf "Ok" klicken.

Die neue Liste enthält jetzt nur noch neue Todesfälle (und Korrekturen). Da für jede Zeile in der Spalte "Datenstand" erfasst ist, von welchen Datum dieser Datensatz stammt, haben wir jetzt zwar kein Sterbedatum, aber zumindest mal das Datum, an dem der Todesfall erfasst wurde.

Dem Datenblatt geben wir jetzt noch einen aussagekräftigen Namen (ich habe "Rohdaten" gewählt), das geht in der Spalte rechts:


 

Ein Klick auf "Schließen und Übernehmen" und wir sind erst mal fertig. Je nach Alter des PC kann das Laden eine Weile dauern, Zeit für einen Kaffee.


Plausibilitätsprüfung

Nun sollten wir natürlich herausfinden, ob wir alles richtig gemacht haben. Schließlich hat Herr Adam ja betont, wie fürchterlich aufwändig und schwierig das alles sei?

PowerBI ist jetzt erstmal leer. Das ist ok so, die Daten liegen im Hintergrund und warten darauf, visualisiert zu werden. Dafür gibt es rechts die Spalte "Visualisierungen" und wir nehmen als allererstes die Visualisierung "Matrix" (grün markiert):
 
 
Die Matrix in Power BI ist in etwa wie die Pivot-Tabelle in Excel: man kann damit die Daten beliebig gruppieren/filtern und sich sämtliche Ergebnisse sofort anzeigen lassen. Im obigen Beispiel habe ich als Zeilen die Landkreise genommen, als Spalten die Altersgruppen, und als Wert die Summe der Zahlen aus der Spalte "AnzahlTodesfall" (PowerBI wählt hier automatisch die "Summe", man könnte auch z.B. das Produkt nehmen, aber das macht hier ja keinen Sinn).
Also: Power BI filtert jede mögliche Kombination von Landkreis und Altersruppe durch, addiert alle Todesfälle und gibt diese in der Tabelle aus. Das können wir uns doch zu nutze machen?

Pivot-Tabellen für Anfänger

Wir wollen nachstellen, was Herr Adam gemacht hat: Also wollen wir wissen: wie viele Tote gab es in der Altersgruppe 80+ in den einzelnen Landkreisen VOR dem 28.12.2020, und wie viele zwischen 28.12.2020 und 24.02.2021?
Den Anfang (Tote pro Landkreis) haben wir oben schon gemacht. Aber wie bekommen wir raus, wie viele davon VOR dem 28.12.2020 gestorben sind? Die Lösung heißt "Measure". Das ist einfach eine Formel, mit der wir PowerBI sagen, was es ausrechnen soll.

Die Formel für "Todesfälle VOR dem 28.12.2020 ist:
 
VOR_I = CALCULATE(sum(Rohdaten[AnzahlTodesfall]), Rohdaten[Datenstand] < DATE(2020, 12, 28))
 
PowerBI berechnet damit die Summe der Todesfälle mit einem Datenstand von VOR dem 28.12.2020.
Um das Measure anzulegen, müssen wir auf die drei Punkte recht neben der Tabelle "Rohdaten" klicken, dann "neues Measure" klicken, die Formel eingeben und Enter drücken:
Das gleiche machen wir für die Todesfälle zwischen 28.12.2020 und 24.02.2021 mit der Formel: 
 
NACH_I = CALCULATE(sum(Rohdaten[AnzahlTodesfall]), Rohdaten[Datenstand] >= DATE(2020, 12, 28), 
Rohdaten[Datenstand]< Date(2021,2,25))
 
Das schöne an Meaures ist: man kann mit Ihnen weiterrechnen. Also können wir auch gleich noch den Quotienten bilden, um genau wie Herr Adam auszurechnen, wie hoch der Anstieg der Todesfälle im Vergleich VOR/NACH Impfung tatsächlich war:
QUOT = [NACH_I]/[VOR_I]
 
Nun können wir die drei Measures in unsere "Matrix" ziehen. Dafür die Matrix anklicken und die Felder VOR_I, NACH_I und QUOT in die Werte der Matrix ziehen (das Feld "AnzahlTodesfall" kann entfernt werden). Und da wir nur die über 80-Jährigen betrachten, ziehen wir das Feld "Altersgruppe" in den "Filter für dieses Visual" und wählen nur die Altersgruppe "A80+" aus:


Der berechnete Quotient gibt uns jetzt direkt die Möglichkeit, die Landkreise mit dem dramatischsten Anstieg zu identifizieren: Durch klicken auf das kleine, oben blau markierte Dreieck in der Spalte "QUOT" wird die ganze Matrix nach dem Quotienten sortiert. 

Und hier (gelb umrandet) unser Ergebnis, zum Vergleich rechts daneben das Ergebnis von Herrn Adam aus der Excel-Tabelle "Altenheime_Version_2", Tabellenblatt "6 sechsfach":

Gar nicht schlecht, damit können wir weitermachen. Und das werden wir, denn da war ja noch die Sache mit dem Meldeverzug.

Kommentare

Beliebte Posts aus diesem Blog

Kritisches Denken für Querdenker