Memahami Penggabungan
Penggabungan menggabungkan dua atau lebih DataFrames berdasarkan kunci kongsi untuk mencipta DataFrame baharu . Pandas menyediakan pelbagai jenis cantuman, termasuk cantuman DALAM, KIRI, KANAN dan LUAR PENUH.
Jenis Cantuman Asas
a. INNER JOIN
Contoh:
left = pd.DataFrame({'key': ['A', 'B', 'C', 'D'], 'value': np.random.randn(4)}) right = pd.DataFrame({'key': ['B', 'D', 'E', 'F'], 'value': np.random.randn(4)}) left.merge(right, on='key')
b. LEFT OUTER JOIN
Contoh:
left.merge(right, on='key', how='left')
c. RIGHT OUTER JOIN
Contoh:
left.merge(right, on='key', how='right')
d. FULL OUTER JOIN
Contoh:
left.merge(right, on='key', how='outer')
Mengecualikan Data dengan Kiri/Kanan Mengecualikan Sertaan
Jika anda perlu mengecualikan baris tertentu, anda boleh melakukan SERTAI Kiri-Mengecualikan atau Kanan-Mengecualikan dengan terlebih dahulu melakukan SERTAI LUAR KIRI/KANAN dan menapis untuk mengecualikan baris daripada DataFrame yang lain.
e. Kiri-Tidak Termasuk SERTAI
Contoh:
(left.merge(right, on='key', how='left', indicator=True) .query('_merge == "left_only"') .drop('_merge', 1))
f. Kanan-Tidak Termasuk SERTAI
Contoh:
(left.merge(right, on='key', how='right', indicator=True) .query('_merge == "right_only"') .drop('_merge', 1))
g. ANTI JOIN
Contoh:
(left.merge(right, on='key', how='outer', indicator=True) .query('_merge != "both"') .drop('_merge', 1))
Mengendalikan Kunci Pendua Lajur
Untuk mengelakkan lajur kunci pendua dalam output, anda boleh menetapkan indeks yang sesuai sebagai kunci sebelum bergabung:
left3 = left2.set_index('keyLeft') left3.merge(right2, left_index=True, right_on='keyRight')
Bercantum pada Berbilang Lajur
Untuk menyertai berbilang lajur, nyatakan senarai untuk di (atau kiri_di dan kanan_di, sebagai sesuai).
left.merge(right, on=['key1', 'key2'] ...)
Fungsi Gabungan Tambahan
Rujuk dokumentasi pada gabungkan, sertai dan gabungkan untuk contoh dan kes yang lebih khusus.
Atas ialah kandungan terperinci Bagaimanakah Pandas DataFrames Bercantum Menggunakan Jenis Gabungan Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!