Apabila bekerja dengan bingkai data, selalunya perlu untuk menggabungkannya berdasarkan kriteria tertentu. Dalam kes ini, objektifnya ialah untuk menggabungkan dua bingkai data, df1 dan df2, mengikut indeks.
Secara lalai, fungsi merge() dalam pustaka Pandas Python menjangkakan padanan berasaskan lajur. Walau bagaimanapun, penggabungan pada indeks boleh dilakukan menggunakan parameter tertentu.
Untuk melakukan cantuman dalaman, di mana hanya baris dengan indeks yang sepadan dikekalkan, gunakan kod berikut:
<code class="python">pd.merge(df1, df2, left_index=True, right_index=True)</code>
Operasi ini menghasilkan output berikut:
id | begin | conditional | confidence | discoveryTechnique | concept |
---|---|---|---|---|---|
278 | 56 | false | 0.00 | 1 | A |
421 | 18 | false | 0.00 | 1 | B |
Sebagai alternatif, cantuman kiri boleh dilakukan menggunakan join() kaedah:
<code class="python">df1.join(df2)</code>
Ini menghasilkan:
id | begin | conditional | confidence | discoveryTechnique | concept |
---|---|---|---|---|---|
278 | 56 | false | 0.00 | 1 | NaN |
421 | 18 | false | 0.00 | 1 | B |
2 | 56 | false | 0.00 | 1 | NaN |
5 | 37 | false | 0.20 | 1 | NaN |
Akhir sekali, gabungan luar boleh dicapai menggunakan fungsi concat():
<code class="python">pd.merge(df1, df2, left_index=True, right_index=True)</code>
Bingkai data yang terhasil merangkumi semua baris daripada kedua-dua bingkai data input:
id | begin | conditional | confidence | discoveryTechnique | concept |
---|---|---|---|---|---|
278 | 56 | false | 0.00 | 1 | A |
421 | 18 | false | 0.00 | 1 | B |
2 | 56 | false | 0.00 | 1 | NaN |
5 | 37 | false | 0.20 | 1 | NaN |
8 | 36 | false | 0.50 | 1 | NaN |
NaN | 37 | false | 0.30 | 2 | NaN |
Ingat bahawa penggabungan pada indeks bukanlah amalan biasa dan harus dipertimbangkan dengan teliti untuk mengelakkan kehilangan data atau isu integriti. Jika penggabungan mengikut indeks tidak dapat dielakkan, kaedah yang disediakan menawarkan pilihan yang fleksibel untuk mencapai hasil yang diinginkan.
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Dua DataFrames Berdasarkan Indeks dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!