Das Zusammenführen von DatenTabellen in Pandas

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab arbeiten wir mit Luftqualitätsdaten, um zu untersuchen, wie man mehrere Tabellen mithilfe der Pandas-Bibliothek in Python kombinieren kann. Wir werden die concat- und merge-Funktionen verwenden, um diese Operationen durchzuführen. Dieses Lab hilft Ihnen zu verstehen, wie man DataFrames effektiv zusammenfügt und zusammenführt.

Tipps für die VM

Nachdem der VM-Start abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.

Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Operationen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.

Wenn Sie während des Lernens Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.

Dies ist ein Guided Lab, das schrittweise Anweisungen bietet, um Ihnen beim Lernen und Üben zu helfen. Befolgen Sie die Anweisungen sorgfältig, um jeden Schritt abzuschließen und praktische Erfahrungen zu sammeln. Historische Daten zeigen, dass dies ein Labor der Stufe Anfänger mit einer Abschlussquote von 95% ist. Es hat eine positive Bewertungsrate von 100% von den Lernenden erhalten.

Importieren der erforderlichen Bibliotheken

Unser erster Schritt besteht darin, die Bibliotheken zu importieren, die wir benötigen. Für dieses Lab werden wir die pandas-Bibliothek verwenden.

## Import the required library
import pandas as pd

Lade die Datensätze

Wir werden zwei Datensätze zu Luftqualität laden. Einer enthält Nitratdaten und der andere enthält Feinstaubdaten.

## Load the Nitrate data
air_quality_no2 = pd.read_csv("data/air_quality_no2_long.csv", parse_dates=True)
air_quality_no2 = air_quality_no2[["date.utc", "location", "parameter", "value"]]

## Load the Particulate matter data
air_quality_pm25 = pd.read_csv("data/air_quality_pm25_long.csv", parse_dates=True)
air_quality_pm25 = air_quality_pm25[["date.utc", "location", "parameter", "value"]]

Zusammenführen der Datensätze

Als nächstes werden wir die Messungen von Nitrat und Feinstaub mithilfe der concat-Funktion in eine einzelne Tabelle zusammenführen.

## Concatenate the two dataframes
air_quality = pd.concat([air_quality_pm25, air_quality_no2], axis=0)

Tabellen mithilfe eines gemeinsamen Identifikators zusammenführen

Anschließend werden wir die Standortkoordinaten zur Messungstabelle hinzufügen, indem wir die merge-Funktion verwenden. Wir werden einen linken Join auf der location-Spalte durchführen.

## Load the stations coordinates data
stations_coord = pd.read_csv("data/air_quality_stations.csv")

## Merge the air_quality and stations_coord dataframes
air_quality = pd.merge(air_quality, stations_coord, how="left", on="location")

Füge die vollständige Beschreibung und den Namen der Parameter hinzu

Schließlich werden wir der Messungstabelle die vollständige Beschreibung und den Namen der Parameter hinzufügen. Wir führen einen linken Join auf den Spalten parameter und id durch.

## Load the air quality parameters data
air_quality_parameters = pd.read_csv("data/air_quality_parameters.csv")

## Merge the air_quality and air_quality_parameters dataframes
air_quality = pd.merge(air_quality, air_quality_parameters, how='left', left_on='parameter', right_on='id')

Zusammenfassung

In diesem Lab haben wir gelernt, wie man in pandas mehrere Tabellen zusammenführt. Wir haben die concat-Funktion verwendet, um Tabellen zusammenzufügen, und die merge-Funktion, um Tabellen mithilfe eines gemeinsamen Identifikators zu verbinden. Diese Operationen sind von entscheidender Bedeutung, wenn es um die Arbeit mit mehreren Datenquellen geht, die zu einem einheitlichen, kohärenten Datensatz für die Analyse zusammengeführt werden müssen.