Heim > Backend-Entwicklung > Python-Tutorial > Wie führt man eine Drei-Wege-Verbindung von Pandas-DataFrames basierend auf einer einzelnen Spalte durch?

Wie führt man eine Drei-Wege-Verbindung von Pandas-DataFrames basierend auf einer einzelnen Spalte durch?

Linda Hamilton
Freigeben: 2024-12-01 05:32:14
Original
802 Leute haben es durchsucht

How to Perform a Three-Way Join of Pandas DataFrames Based on a Single Column?

Drei-Wege-Verknüpfungen für Pandas-Datenrahmen basierend auf Spalten durchführen

Wenn Sie mit unterschiedlichen Datensätzen arbeiten, können Sie diese zusammenführen, um eine umfassende Ansicht zu erhalten entscheidend sein. In der Pandas-Bibliothek von Python bietet die Funktion „join()“ eine leistungsstarke Möglichkeit, mehrere Datenrahmen basierend auf einem gemeinsamen Index zu kombinieren.

Frage:

Sie besitzen drei CSV-Dateien, Jede enthält in der ersten Spalte Personennamen und in den übrigen Spalten verschiedene Attribute. Ihr Ziel ist es, diese Dateien in einer einzigen CSV-Datei zu „verbinden“, wobei jede Zeile eine einzigartige Person und alle ihre Attribute darstellt.

Zunächst impliziert die Funktion „join()“ die Notwendigkeit eines Multiindex. Es kommt jedoch zu Verwirrung, wenn versucht wird, eine Verbindung basierend auf einem einzelnen Index herzustellen.

Antwort:

Um die gewünschte Drei-Wege-Verknüpfung zu erreichen, können Sie die Funktools verwenden. Reduzierfunktion, die eine sequentielle Reduzierung der Datenrahmen ermöglicht. So können Sie es machen:

import functools as ft
dfs = [df0, df1, df2, ..., dfN]  # List of dataframes
df_final = ft.reduce(lambda left, right: pd.merge(left, right, on='name'), dfs)
Nach dem Login kopieren

Mit diesem Ansatz können Sie eine beliebige Anzahl von Datenrahmen basierend auf einer gemeinsamen Spalte zusammenführen, in Ihrem Fall beispielsweise „Name“. Die Funktion „reduce()“ wendet die Funktion „pandas merge()“ iterativ auf die Datenrahmen in der Liste an, was zu einem einzelnen Datenrahmen namens „df_final“ führt, der alle zusammengeführten Attributdaten enthält.

Das obige ist der detaillierte Inhalt vonWie führt man eine Drei-Wege-Verbindung von Pandas-DataFrames basierend auf einer einzelnen Spalte durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage