Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Melakukan Gabungan Luar Kiri Panda Merentas Berbilang DataFrames dengan Berbilang Lajur Sertaan?

Bagaimana untuk Melakukan Gabungan Luar Kiri Panda Merentas Berbilang DataFrames dengan Berbilang Lajur Sertaan?

Barbara Streisand
Lepaskan: 2025-01-04 00:51:44
asal
1022 orang telah melayarinya

How to Perform a Pandas Left Outer Join Across Multiple DataFrames with Multiple Join Columns?

Pandas Kiri Luar Sertai pada Berbilang DataFrames dengan Berbilang Lajur

Dalam Panda, menggabungkan bingkai data adalah tugas biasa. Ini menjadi lebih kompleks apabila melakukan gabungan yang melibatkan berbilang jadual dan berbilang lajur gabungan. Untuk gabungan luar kiri, kami mengekalkan semua baris daripada bingkai data kiri dan mengisi nilai yang tiada daripada bingkai data kanan.

Untuk menggabungkan bingkai data df1, df2 dan df3 dengan berbilang lajur gabungan, kami mengesyorkan dua langkah pendekatan:

Langkah 1: Gabungkan df1 dan df2

s1 = pd.merge(df1, df2, how='left', on=['Year', 'Week', 'Colour'])
Salin selepas log masuk

Langkah 2: Gabungkan hasil daripada Langkah 1 dengan df3

Memandangkan kami tidak memerlukan lajur Tahun untuk gabungan kedua, kita boleh menggugurkannya daripada df3 sebelum menyertai:

df3_dropped = df3.drop('Year', axis=1)
df = pd.merge(s1, df3_dropped, how='left', on=['Week', 'Colour'])
Salin selepas log masuk

Ini memberikan kita yang diingini keluaran:

   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
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Melakukan Gabungan Luar Kiri Panda Merentas Berbilang DataFrames dengan Berbilang Lajur Sertaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan