Heim >Backend-Entwicklung >Python-Tutorial >Wie lassen sich mehrere Pandas-DataFrames basierend auf einer gemeinsamen Spalte effizient zusammenführen?
Mehrere DataFrames auf Spalten in Pandas mit Drei-Wege-Joins zusammenführen
Das Zusammenführen von Daten, eine grundlegende Aufgabe in der Datenanalyse, ermöglicht Ihnen das Kombinieren Daten aus mehreren Quellen. In Pandas ist die Funktion „join()“ ein leistungsstarkes Tool zum Zusammenführen von Datenrahmen. Beim Zusammenfügen mehrerer Datenrahmen können jedoch Herausforderungen im Zusammenhang mit hierarchischen Indizierungsschemata auftreten.
Drei-Wege-Verknüpfungen unter Verwendung einer gemeinsamen Spalte
Stellen Sie sich das Szenario vor, in dem Sie drei haben CSV-Dateien, die jeweils Informationen über dieselbe Gruppe von Personen enthalten. Die erste Spalte in jeder Datei enthält den Namen der Person, während die nachfolgenden Spalten deren Attribute darstellen. Ihr Ziel ist es, diese Dateien in einer einzigen CSV-Datei zusammenzufassen, wobei jede Zeile alle Attribute für jede einzelne Person enthält.
Hierarchische Indizierung und Multi-Index
In Pandas Multi-Index bezieht sich auf ein Indexierungsschema, bei dem jede Indexebene eine andere Spalte darstellt. Beim Zusammenfügen von Datenrahmen wird ein Multiindex verwendet, um die Daten basierend auf gemeinsamen Werten auszurichten. In Ihrem Fall kann die „Join“-Funktion angeben, dass Sie einen Multi-Index benötigen, weil Sie eine einzelne Spalte (Name) verknüpfen, die der Index in jedem Datenrahmen ist.
Datenrahmen ohne zusammenführen Hierarchische Indizierung
In einigen Szenarien ist jedoch möglicherweise keine hierarchische Indizierung erforderlich. Wenn die Datenrahmen eine gemeinsame Spalte haben, können Sie die Lambda-Funktion und das Functools-Paket verwenden, um den Zusammenführungsprozess zu vereinfachen. Hier ist ein Beispiel:
import pandas as pd import functools as ft dfs = [df1, df2, df3, ..., dfN] df_final = ft.reduce(lambda left, right: pd.merge(left, right, on='name'), dfs)
In diesem Code:
Dieser Ansatz eignet sich zum Zusammenführen mehrerer Datenrahmen, ohne dass komplexe hierarchische Indexierungsschemata angegeben werden müssen.
Das obige ist der detaillierte Inhalt vonWie lassen sich mehrere Pandas-DataFrames basierend auf einer gemeinsamen Spalte effizient zusammenführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!