Pandas beitreten oder fusionieren: was ist der unterschied?


Mit den Funktionen join() und merge() können zwei Pandas-DataFrames kombiniert werden.

Hier ist der Hauptunterschied zwischen den beiden Funktionen:

  • Die Funktion „join()“ kombiniert zwei DataFrames nach Index.
  • Die Funktion merge() kombiniert zwei DataFrames basierend auf der von Ihnen angegebenen Spalte.

Diese Funktionen verwenden die folgende grundlegende Syntax:

 #use join() to combine two DataFrames by index
df1. join (df2)

#use merge() to combine two DataFrames by specific column name
df1. merge (df2,on=' column_name ')

In Fällen, in denen Sie wissen, dass Sie zwei DataFrames per Index verbinden möchten, kann die Funktion „join()“ verwendet werden, um die Eingabe zu sparen.

Die folgenden Beispiele zeigen, wie die einzelnen Funktionen in der Praxis verwendet werden.

Beispiel 1: So verwenden Sie die Funktion „join()“.

Der folgende Code zeigt, wie Sie mit der Funktion „join()“ zwei DataFrames kombinieren:

 import pandas as pd

#create two DataFrames
df1 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' points ': [8, 12, 19]}). set_index (' name ')
df2 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' steals ': [4, 5, 2]}). set_index (' name ')

#view two DataFrames
print (df1); print (df2)

      steal points
name name
A 8 A 4
B 12 B 5
C 19 C 2

#use join() function to join together two DataFrames
df1. join (df2)

	steal points
name		
At 8 4
B 12 5
C 19 2

Standardmäßig hat die Funktion „join()“ die beiden DataFrames mithilfe der Indexspalte verbunden.

Beispiel 2: Verwendung der Funktion merge()

Der folgende Code zeigt, wie Sie mit der Funktion merge() zwei DataFrames kombinieren:

 import pandas as pd

#create two DataFrames
df1 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' points ': [8, 12, 19]}). set_index (' name ')
df2 = pd. DataFrame ({' name ': ['A', 'B', 'C'], ' steals ': [4, 5, 2]}). set_index (' name ')

#view two DataFrames
print (df1); print (df2)

      steal points
name name
A 8 A 4
B 12 B 5
C 19 C 2

#use join() function to join together two DataFrames
df1. merge (df2, on=' name ')

	steal points
name		
At 8 4
B 12 5
C 19 2

Beachten Sie, dass die Funktion merge() genau das gleiche Ergebnis zurückgab, wir die Pandas jedoch explizit anweisen mussten, die DataFrames über die Spalte „Name“ zu verbinden.

Zusätzliche Ressourcen

Die vollständige Online-Dokumentation zu den Funktionen join() und merge() finden Sie hier:

Dokumentation zur Funktion „join()“.
Dokumentation zur Funktion merge()

In den folgenden Tutorials wird erläutert, wie andere allgemeine Funktionen in Pandas ausgeführt werden:

So fügen Sie Zeilen zu einem Pandas DataFrame hinzu
So fügen Sie Pandas DataFrame eine Kopfzeile hinzu
So erhalten Sie die erste Zeile von Pandas DataFrame
So erhalten Sie die erste Spalte von Pandas DataFrame

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert