Einführung
In diesem Projekt lernst du, wie du COVID-19-Daten mit Python analysierst. Die COVID-19-Pandemie hat einen erheblichen Einfluss auf die Welt genommen, und das Verständnis der Daten ist entscheidend für das Verfolgen der Ausbreitung des Virus und das Treffen informierter Entscheidungen.
👀 Vorschau
{
"Bestätigt": {
"Afrika": 1203094,
"Amerika": 6396173,
"Asien": 6480321,
"Europa": 3450299,
"Ozeanien": 27346,
"Sonstige": 721,
"Gesamt": 17557954
},
"Todesfälle": {
"Afrika": 28289,
"Amerika": 254610,
"Asien": 133186,
"Europa": 206438,
"Ozeanien": 576,
"Sonstige": 15,
"Gesamt": 623114
},
"Genesen": {
"Afrika": 930536,
"Amerika": 5087347,
"Asien": 5163062,
"Europa": 1927545,
"Ozeanien": 21892,
"Sonstige": 651,
"Gesamt": 13131033
},
"Aktiv": {
"Afrika": 244269,
"Amerika": 1054216,
"Asien": 1184073,
"Europa": 1316316,
"Ozeanien": 4878,
"Sonstige": 55,
"Gesamt": 3803807
}
}
🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du die Entwicklungsumgebung einrichtest und die erforderlichen Python-Bibliotheken installierst
- Wie du die Struktur und den Inhalt der COVID-19-Daten verstehst
- Wie du eine Funktion implementierst, um Länder-Namen in Kontinent-Namen umzuwandeln
- Wie du die COVID-19-Daten verarbeitest und die Summenstatistiken für jeden Kontinent berechnest
- Wie du den Code testest und die Ausgabe verifizierst
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Zu verstehen, wie du mit CSV-Daten in Python umgehst
- Funktionen zur Datenverarbeitung und -analyse zu implementieren
- Daten zwischen verschiedenen Formaten (z.B. CSV in JSON) umzuwandeln
- Erfahrungen in der Datenanalyse und -visualisierung zu sammeln
- Durch datengetriebene Erkenntnisse zum Verständnis der COVID-19-Pandemie beizutragen
Bereite die Umgebung vor
In diesem Schritt lernst du, wie du die Umgebung für das COVID-19-Datenanalyseprojekt einrichtest.
- Öffne das Terminal und navigiere zum Verzeichnis
/home/labex/project. - Installiere die erforderlichen Python-Bibliotheken, indem du folgenden Befehl ausführst:
python3 -m pip install pandas country-converter
Dies installiert die Bibliotheken pandas und country-converter, die für das Projekt benötigt werden.
Verstehe die Daten
Die COVID-19-Daten werden in einer CSV-Datei im Verzeichnis /home/labex/project bereitgestellt. Die Datei enthält die folgenden Spalten:
Country_Region: Der Name des Landes oder der Region.Bestätigt: Die Gesamtzahl der bestätigten COVID-19-Fälle.Todesfälle: Die Gesamtzahl der COVID-19-Todesfälle.Genesen: Die Gesamtzahl der COVID-19-Erholungen.Aktiv: Die Gesamtzahl der aktiven COVID-19-Fälle.
Deine Aufgabe besteht darin, diese Daten zu verarbeiten und die Summenstatistiken für jeden Kontinent zu berechnen.
Implementiere die country_to_continent - Funktion
Der erste Schritt besteht darin, eine Funktion zu erstellen, die einen Länder-Namen in den entsprechenden Kontinent-Namen umwandeln kann. Erstelle in das Verzeichnis /home/labex/project eine neue Datei namens covid.py und füge den folgenden Code hinzu:
import country_converter as coco
def country_to_continent(country_name):
"""Diese Funktion nimmt einen Länder-Namen entgegen und gibt den Kontinent-Namen zurück."""
try:
## Konvertiere Länder-Namen in Kontinent-Namen
if country_name == "Diamond Princess" oder country_name == "MS Zaandam":
return "Sonstige"
country_continent_name = coco.convert(names=country_name, to="continent")
## Wenn der Länder-Namen nicht gefunden wird, gebe 'Sonstige' zurück
if country_continent_name == "not found":
return "Sonstige"
return country_continent_name
except:
return "Sonstige"
Diese Funktion verwendet die Bibliothek country-converter, um einen Länder-Namen in den entsprechenden Kontinent-Namen umzuwandeln. Wenn der Länder-Namen nicht gefunden wird, gibt sie "Sonstige" zurück.
Implementiere die count - Funktion
Als nächstes musst du die count-Funktion implementieren, die die COVID-19-Daten verarbeiten und die Summenstatistiken für jeden Kontinent zurückgeben wird. Füge den folgenden Code zur covid.py-Datei hinzu:
import json
import pandas as pd
def count(data):
"""Diese Funktion nimmt einen Dateipfad entgegen und gibt die Gesamtzahl der
bestätigten, verstorbenen, genesenen und aktiven Fälle für jeden Kontinent zurück."""
## Lies die Daten aus der Datei
df = pd.read_csv(data)
## Fülle fehlende Werte mit 0
df.fillna(0, inplace=True)
## Entferne Zeilen mit fehlenden Werten
df = df[df["Bestätigt"] == df["Todesfälle"] + df["Genesen"] + df["Aktiv"]]
## Konvertiere Länder-Namen in Kontinent-Namen
df["Kontinent"] = df["Country_Region"].apply(country_to_continent)
## Konvertiere Datentyp in int
df[["Bestätigt", "Todesfälle", "Genesen", "Aktiv"]] = df[
["Bestätigt", "Todesfälle", "Genesen", "Aktiv"]
].astype(int)
## Wähle die interessierenden Spalten und verwandle sie in ein Dictionary
df = df[["Kontinent", "Bestätigt", "Todesfälle", "Genesen", "Aktiv"]]
result = df.groupby("Kontinent").sum().to_dict()
## Füge die Summe für jeden Kontinent hinzu
for key in result.keys():
result[key]["Gesamt"] = sum(result[key].values())
return json.dumps(result)
Diese Funktion liest die COVID-19-Daten aus der CSV-Datei, verarbeitet die Daten und gibt die Summenstatistiken für jeden Kontinent im JSON-Format zurück.
Teste den Code
Um den Code zu testen, kannst du folgenden Befehl im Terminal ausführen:
python3 covid.py
Dies führt die count-Funktion aus und druckt die resultierenden JSON-Daten in die Konsole.
Verifiziere die Ausgabe
Die Ausgabe der count-Funktion sollte ein JSON-String sein, der ähnlich dem folgenden aussieht:
{
"Bestätigt": {
"Afrika": 1203094,
"Amerika": 6396173,
"Asien": 6480321,
"Europa": 3450299,
"Ozeanien": 27346,
"Sonstige": 721,
"Gesamt": 17557954
},
"Todesfälle": {
"Afrika": 28289,
"Amerika": 254610,
"Asien": 133186,
"Europa": 206438,
"Ozeanien": 576,
"Sonstige": 15,
"Gesamt": 623114
},
"Genesen": {
"Afrika": 930536,
"Amerika": 5087347,
"Asien": 5163062,
"Europa": 1927545,
"Ozeanien": 21892,
"Sonstige": 651,
"Gesamt": 13131033
},
"Aktiv": {
"Afrika": 244269,
"Amerika": 1054216,
"Asien": 1184073,
"Europa": 1316316,
"Ozeanien": 4878,
"Sonstige": 55,
"Gesamt": 3803807
}
}
Diese Ausgabe repräsentiert die Summenstatistiken für jeden Kontinent, einschließlich der Gesamtzahl der bestätigten Fälle, Todesfälle, Genesenen und aktiven Fälle.
Herzlichen Glückwunsch! Du hast das COVID-19-Datenanalyse-Projekt abgeschlossen. Wenn du Fragen oder Probleme hast, kannst du gerne fragen.
Zusammenfassung
Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.



