Jak wykonać lewe połączenie w pandach (z przykładem)
Aby wykonać lewe złączenie w pandach, możesz użyć następującej podstawowej składni:
import pandas as pd df1. merge (df2, on=' column_name ', how=' left ')
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Jak wykonać lewe złączenie w Pandach
Załóżmy, że mamy następujące dwie ramki danych pandy zawierające informacje o różnych drużynach koszykówki:
import pandas as pd #createDataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28]}) df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'G', 'H'], ' assists ': [4, 9, 14, 13, 10, 8]}) #view DataFrames print (df1) team points 0 to 18 1 B 22 2 C 19 3 D 14 4 E 14 5 F 11 6 G 20 7:28 a.m. print (df2) team assists 0 to 4 1 B 9 2 C 14 3 D 13 4G 10 5:8 a.m.
Możemy użyć poniższego kodu, aby wykonać lewe złączenie, zachowując wszystkie wiersze z pierwszej ramki danych i dodając wszystkie kolumny pasujące na podstawie kolumny zespołu w drugiej ramce danych:
#perform left join
df1. merge (df2, on=' team ', how=' left ')
team points assists
0 to 18 4.0
1 B 22 9.0
2 C 19 14.0
3 D 14 13.0
4 E 14 NaN
5 F 11 NaN
6G 20 10.0
7:28 a.m. 8.0
Każdy zespół w lewej ramce danych ( df1 ) jest zwracany w połączonej ramce danych i zwracane są tylko wiersze w prawej ramce danych ( df2 ), które odpowiadają nazwie zespołu w lewej ramce danych.
Należy zauważyć, że dwie drużyny w df2 (zespoły E i F), które nie pasują do nazwy zespołu w df1 , po prostu zwracają wartość NaN w kolumnie asyst połączonej ramki danych.
Pamiętaj, że możesz także użyć pd.merge() z następującą składnią, aby zwrócić dokładnie ten sam wynik:
#perform left join
p.d. merge (df1, df2, on=' team ', how=' left ')
team points assists
0 to 18 4.0
1 B 22 9.0
2 C 19 14.0
3 D 14 13.0
4 E 14 NaN
5 F 11 NaN
6G 20 10.0
7:28 a.m. 8.0
Należy zauważyć, że ta scalona ramka danych odpowiada tej z poprzedniego przykładu.
Uwaga : Pełną dokumentację funkcji scalania można znaleźć tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje na pandach:
Jak wykonać zabezpieczenie przed połączeniem w Pandach
Jak wykonać połączenie wewnętrzne w Pandach
Jak wykonać połączenie krzyżowe w Pandach