Pandy: jak sprawdzić, czy dwie ramki danych są równe
Możesz użyć następującej podstawowej składni, aby sprawdzić, czy dwie ramki danych pand są równe:
df1. equals (df2)
Spowoduje to zwrócenie wartości True lub False .
Jeśli dwie ramki danych nie są równe, możesz użyć poniższej składni, aby znaleźć wiersze w drugiej ramce danych, które nie istnieją w pierwszej ramce danych:
#perform outer join on two DataFrames all_df = df1. merge (df2, indicator= True , how=' outer ') #find which rows only exist in second DataFrame only_df2 = all_df[all_df[' _merge '] == ' right_only '] only_df2 = only_df2. drop (' _merge ', axis= 1 )
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Sprawdź, czy dwie ramki danych pand są równe
Załóżmy, że mamy następujące dwie ramki danych pandy:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'], ' points ': [12, 15, 22, 29, 24]}) print (df1) team points 0 to 12 1 B 15 2 C 22 3 D 29 4 E 24 #create second DataFrame df2 = pd. DataFrame ({' team ': ['A', 'D', 'F', 'G', 'H'], ' points ': [12, 29, 15, 19, 10]}) print (df2) team points 0 to 12 1 D 29 2 F 15 3 G 19 4:10 a.m.
Możemy użyć następującej składni, aby sprawdzić, czy dwie ramki danych są równe:
#check if two DataFrames are equal df1. equals (df2) False
Dane wyjściowe zwracają False , co oznacza, że dwie ramki danych nie są równe.
Możemy następnie użyć następującej składni, aby dowiedzieć się, które wiersze istnieją w drugiej ramce DataFrame, ale nie w pierwszej:
#perform outer join on two DataFrames all_df = df1. merge (df2, indicator= True , how=' outer ') #find which rows only exist in second DataFrame only_df2 = all_df[all_df[' _merge '] == ' right_only '] only_df2 = only_df2. drop (' _merge ', axis= 1 ) #view results print (only_df2) team points 5 F 15 6 G 19 7:10 a.m.
Z wyniku widzimy, że w drugiej ramce DataFrame znajdują się trzy wiersze, które nie istnieją w pierwszej ramce DataFrame.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w pandach:
Pandy: dodaj kolumnę z jednej ramki DataFrame do drugiej
Pandy: Uzyskaj wiersze, których nie ma w innej ramce DataFrame
Pandy: jak sprawdzić, czy wiele kolumn jest równych