Rumah >pembangunan bahagian belakang >Tutorial Python >Cara Menggabungkan Bingkai Data Pandas Berdasarkan Lajur Dikongsi: Panduan untuk `join()` dan `merge()`

Cara Menggabungkan Bingkai Data Pandas Berdasarkan Lajur Dikongsi: Panduan untuk `join()` dan `merge()`

Barbara Streisand
Barbara Streisandasal
2024-10-24 22:10:02272semak imbas

How to Combine Pandas DataFrames Based on a Shared Column: A Guide to `join()` and `merge()`

Menggabungkan Bingkai Data Panda pada Lajur Dikongsi: Panduan Komprehensif

Pengenalan

Menggabungkan data daripada berbilang bingkai data ialah tugas biasa dalam analisis data . Pandas menawarkan beberapa kaedah untuk mencapai ini, termasuk fungsi join() dan merge(). Artikel ini menunjukkan cara menggunakan fungsi ini untuk menggabungkan dua bingkai data yang berkongsi lajur biasa.

Menggunakan Fungsi join()

Fungsi join() melakukan cantuman dalaman secara lalai, bermakna ia hanya mengekalkan baris yang mempunyai nilai yang sepadan dalam lajur gabungan. Dalam contoh yang diberikan, fungsi join() tidak boleh digunakan kerana restaurant_ids_dataframe dan restaurant_review_frame mempunyai nama lajur yang bertindih (bintang dan jenis), seperti yang ditunjukkan oleh mesej ralat:

Exception: columns overlap: Index([business_id, stars, type], dtype=object)

Menggunakan Fungsi merge()

Fungsi merge() menawarkan fleksibiliti yang lebih besar untuk menggabungkan bingkai data. Untuk melakukan gabungan luar, yang mengekalkan semua baris daripada kedua-dua bingkai data, gunakan parameter how='outer':

<code class="python">import pandas as pd
pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>

Secara lalai, merge() menggunakan akhiran ('_x', '_y' ) untuk membezakan antara lajur dengan nama pendua. Untuk menyesuaikan akhiran, hantar nilai kepada parameter akhiran, seperti yang ditunjukkan di bawah:

<code class="python">pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))</code>

Kesimpulan

Kedua-dua fungsi join() dan merge() boleh digunakan untuk menggabungkan bingkai data pada lajur biasa. Memahami perbezaan antara fungsi ini adalah penting untuk mencapai gelagat gabungan yang diingini. Fungsi merge() menawarkan lebih banyak fleksibiliti, termasuk keupayaan untuk melakukan cantuman luar dan menyesuaikan sufiks lajur. Dengan menguasai teknik ini, anda boleh menggabungkan bingkai data dengan berkesan untuk mengekstrak cerapan bermakna daripada set data anda.

Atas ialah kandungan terperinci Cara Menggabungkan Bingkai Data Pandas Berdasarkan Lajur Dikongsi: Panduan untuk `join()` dan `merge()`. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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