So finden Sie den Unterschied zwischen zwei Datenrahmen
Bei der Arbeit mit Daten haben wir oft zwei Datenrahmen, die überlappende Informationen enthalten, aber enthalten auch eindeutige Zeilen oder Spalten. Um einen Datenrahmen zu erhalten, der nur die Zeilen und Spalten enthält, die in einem Datenrahmen und nicht im anderen vorhanden sind, müssen wir eine Datenrahmen-Differenzoperation durchführen.
Um dies zu erreichen, können wir die Funktion drop_duplicates mit verwenden keep=False-Parameter, der effektiv alle doppelten Zeilen aus einem verketteten Datenrahmen entfernt:
pd.concat([df1,df2]).drop_duplicates(keep=False)
Diese Methode geht jedoch davon aus, dass beide Datenrahmen frei von sind Duplikate. Wenn in den ursprünglichen Datenrahmen Duplikate vorhanden sind, werden diese durch die obige Methode versehentlich entfernt. Um dieses Szenario zu bewältigen, können wir einen von zwei alternativen Ansätzen verwenden:
Methode 1: Verwendung von isin mit Tupeln
Diese Methode beinhaltet die Erstellung eines Tupels für jede Zeile im Datenrahmen und dann mit isin prüfen, ob ein Tupel aus df1 in df2 vorhanden ist. Die Zeilen, die nur in df1 vorhanden sind, bleiben erhalten:
df1[~df1.apply(tuple,1).isin(df2.apply(tuple,1))]
Methode 2: Mit Indikator zusammenführen
Durch Zusammenführen der beiden Datenrahmen mit dem Indikatorparameter True, Wir können eine neue Spalte erstellen, die angibt, welche Zeilen für df1 oder df2 eindeutig sind. Die für df1 eindeutigen Zeilen können dann herausgefiltert werden, indem Zeilen ausgewählt werden, in denen der _merge-Spaltenwert „left_only“ ist:
df1.merge(df2,indicator = True, how='left').loc[lambda x : x['_merge']!='both']
Durch die Implementierung dieser Techniken können Sie den Unterschied zwischen zwei Datenrahmen effizient bestimmen und so sicherstellen Sie haben einen Datenrahmen, der nur die eindeutigen Informationen aus jedem Datenrahmen enthält.
Das obige ist der detaillierte Inhalt vonWie kann man den Unterschied zwischen zwei Pandas-DataFrames effizient finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!