Pandas Left Outer Join für mehrere Datenrahmen mit mehreren Spalten
In Pandas ist das Zusammenführen von Datenrahmen eine häufige Aufgabe. Dies wird komplexer, wenn Verknüpfungen mit mehreren Tabellen und mehreren Verknüpfungsspalten durchgeführt werden. Für einen linken äußeren Join behalten wir alle Zeilen des linken Datenrahmens bei und ergänzen fehlende Werte aus dem rechten Datenrahmen.
Um die Datenrahmen df1, df2 und df3 mit mehreren Join-Spalten zusammenzuführen, empfehlen wir einen zweistufigen Vorgang Vorgehensweise:
Schritt 1: df1 und zusammenführen df2
s1 = pd.merge(df1, df2, how='left', on=['Year', 'Week', 'Colour'])
Schritt 2: Führen Sie das Ergebnis aus Schritt 1 mit df3 zusammen
Da wir die Spalte „Jahr“ für die zweite Zusammenführung nicht benötigen, Wir können es vor dem Beitritt aus df3 löschen:
df3_dropped = df3.drop('Year', axis=1) df = pd.merge(s1, df3_dropped, how='left', on=['Week', 'Colour'])
Das gibt uns das Gewünschte Ausgabe:
Year Week Colour Val1 Val2 Val3 0 2014 A Red 50 NaN NaN 1 2014 B Red 60 NaN 60 2 2014 B Black 70 100 10 3 2014 C Red 10 20 NaN 4 2014 D Green 20 NaN 20
Das obige ist der detaillierte Inhalt vonWie führe ich einen Pandas Left Outer Join über mehrere DataFrames mit mehreren Join-Spalten durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!