Bagaimana cara menggabungkan dua frame data dalam Python Pandas?

12

Saya memiliki dua frame data df1 dan df2 dan saya ingin menggabungkannya menjadi satu frame data. Seolah-olah df1 dan df2 dibuat dengan memisahkan satu frame data di tengah secara vertikal, seperti merobek selembar kertas yang berisi daftar menjadi dua sehingga separuh kolom diletakkan pada satu kertas dan separuh kolom masuk pada yang lain. Saya ingin menggabungkan mereka kembali. Bagaimana saya melakukannya?

sebastianspiegel
sumber

Jawaban:

7

Panda memiliki fungsi gabungan bawaan. Silakan lihat dokumentasi

End-result should be something like this:
df_merged = pd.merge(df1, df2, left_on=['name_indexcolumn_df1_here'],
              right_on=['name_indexcolumn_df2_here'],
              how='inner')
Rolf Schorpion
sumber
4

Jika Anda membagi DataFrame "secara vertikal" maka Anda memiliki dua DataFrame dengan indeks yang sama.

Anda bisa menggunakan fungsi gabungan atau fungsi concat .

Dengan concat with akan menjadi sesuatu seperti ini:

pandas.DataFrame.concat([df1,df2], axis=1)

Dengan penggabungan dengan akan menjadi sesuatu seperti ini:

pandas.Dataframe.merge([df1,df2], left_index=True)

Untuk opsi penggabungan yang lebih kompleks, lihat tutorial Gabung, bergabung, dan pandu concat .

João Almeida
sumber
1
gabungan salah ... sudahkah Anda mencoba menjalankan kode?
Jorge Leitao