Apabila menggabungkan dua DataFrames, adalah perkara biasa untuk mengekalkan maklumat daripada yang pertama sambil menggabungkan data dari yang kedua. Mari kita terokai cara untuk mencapai ini dalam Pandas.
Pertimbangkan senario berikut:
Matlamat kami adalah untuk mengisi df1 dengan maklumat seks sambil mengekalkan maklumat untuk individu yang tiada dalam df2.
<code class="python">df = df1.merge(df2[['Name', 'Sex']], on='Name', how='left')</code>
Operasi gabungan ini bergabung dengan df1 pada lajur Nama dengan df2 sambil mengekalkan semua baris daripada df1 (disebabkan oleh gabungan kiri) dan mengemas kini nilai dalam Sex jika tersedia.
<code class="python">df1['Sex'] = df1['Name'].map(df2.set_index('Name')['Sex'])</code>
Pendekatan ini menggunakan fungsi peta untuk memetakan lajur Nama df1 ke lajur Jantina df2 sambil menetapkan Nama sebagai indeks dalam df2. Ini secara berkesan memadankan individu dalam kedua-dua DataFrames, mengisi nilai yang hilang dengan NaN.
Jika terdapat nilai Nama pendua dalam df2, pendekatan peta mungkin mengembalikan hasil yang tidak konsisten. Dalam kes sedemikian, pertimbangkan untuk menyahgandakan df2 atau menggunakan pemetaan berasaskan kamus.
Selain itu, gunakan fungsi gabungan dengan berhati-hati jika Nama mengandungi nilai yang tiada, kerana ia akan menyebabkan baris yang tidak sepadan dialih keluar. Jika integriti data adalah kritikal, kendalikan nilai yang hilang dengan sewajarnya sebelum digabungkan.
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan DataFrames dan Sertakan Lajur daripada Kedua-duanya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!