Menggabungkan Data
Table of Contents
Pandas Dasar-dasar Manipulasi Data - This article is part of a series.
Menggabungkan data dari berbagai sumber adalah langkah penting dalam analisis data yang kompleks. Pandas menyediakan berbagai metode untuk melakukan penggabungan data, memungkinkan kita untuk mengintegrasikan informasi dari multiple dataset. Mari eksplorasi berbagai aspek kunci dalam menggabungkan data.
A. Menggabungkan Berdasarkan Kolom (Merge) #
Format Penggunaan:
merged_data = pd.merge(df1, df2, on='Kolom_Penggabungan', how='tipe_penggabungan')
Contoh Penggunaan:
merged_students_courses = pd.merge(students, courses, on='StudentID', how='inner')
Penjelasan:
Penggabungan berdasarkan kolom digunakan untuk menggabungkan dua dataset berdasarkan nilai yang sama dalam kolom tertentu. Parameter on menentukan kolom yang digunakan sebagai kunci penggabungan, dan how menentukan tipe penggabungan seperti ‘inner’, ‘outer’, ’left’, atau ‘right’.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki Junior
1 102 Budi Manajemen Bisnis 22 Laki-laki Senior
2 103 Citra Akuntansi 21 Perempuan Senior
3 104 Diana Ilmu Komunikasi 23 Perempuan Sophomore
4 105 Eva Teknik Elektro 22 Perempuan Sophomore
B. Menggabungkan Berdasarkan Indeks (Join) #
Format Penggunaan:
joined_data = df1.join(df2, on='Indeks_Penggabungan', how='tipe_penggabungan')
Contoh Penggunaan:
joined_students_courses = students.join(courses, on='StudentID', how='inner')
Penjelasan:
Penggabungan berdasarkan indeks memanfaatkan indeks dataset sebagai kunci penggabungan. Metode ini seringkali digunakan ketika data memiliki struktur hierarkis atau memiliki indeks yang unik.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki Junior
1 102 Budi Manajemen Bisnis 22 Laki-laki Senior
2 103 Citra Akuntansi 21 Perempuan Senior
3 104 Diana Ilmu Komunikasi 23 Perempuan Sophomore
4 105 Eva Teknik Elektro 22 Perempuan Sophomore
C. Menggabungkan Data secara Vertikal (Concatenate) #
Format Penggunaan:
concatenated_data = pd.concat([df1, df2], axis=0/1)
Contoh Penggunaan:
concatenated_students = pd.concat([students_2022, students_2023], axis=0)
Penjelasan:
Penggabungan data secara vertikal dilakukan dengan menggabungkan data berdasarkan baris (axis=0). Hal ini berguna ketika kita ingin menggabungkan data yang memiliki struktur kolom yang serupa.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki NaN
1 102 Budi Manajemen Bisnis 22 Laki-laki NaN
2 103 Citra Akuntansi 21 Perempuan NaN
3 104 Diana Ilmu Komunikasi 23 Perempuan NaN
4 105 Eva Teknik Elektro 22 Perempuan NaN
0 NaN NaN NaN NaN NaN Junior
1 NaN NaN NaN NaN NaN Senior
2 NaN NaN NaN NaN NaN Senior
3 NaN NaN NaN NaN NaN Sophomore
4 NaN NaN NaN NaN NaN Sophomore
D. Menggabungkan Data dengan Metode Append #
Format Penggunaan:
appended_data = df1.append(df2, ignore_index=True)
Contoh Penggunaan:
appended_students = students_2022.append(students_2023, ignore_index=True)
Penjelasan:
Metode append memungkinkan kita untuk menambahkan baris data dari satu dataset ke dataset lainnya. Parameter ignore_index=True
akan membuat indeks yang baru untuk hasil penggabungan.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki NaN
1 102 Budi Manajemen Bisnis 22 Laki-laki NaN
2 103 Citra Akuntansi 21 Perempuan NaN
3 104 Diana Ilmu Komunikasi 23 Perempuan NaN
4 105 Eva Teknik Elektro 22 Perempuan NaN
5 NaN NaN NaN NaN NaN Junior
6 NaN NaN NaN NaN NaN Senior
7 NaN NaN NaN NaN NaN Senior
8 NaN NaN NaN NaN NaN Sophomore
9 NaN NaN NaN NaN NaN Sophomore
E. Penggabungan Data dengan Metode Concatenate pada Kolom #
Format Penggunaan:
concatenated_data = pd.concat([df1, df2], axis=1)
Contoh Penggunaan:
concatenated_students_info = pd.concat([students, students_info], axis=1)
Penjelasan:
Penggabungan data dengan metode concatenate pada kolom dilakukan dengan menggabungkan data berdasarkan kolom (axis=1). Hal ini berguna ketika kita ingin menggabungkan informasi tambahan ke dataset yang sudah ada.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki NaN
1 102 Budi Manajemen Bisnis 22 Laki-laki NaN
2 103 Citra Akuntansi 21 Perempuan NaN
3 104 Diana Ilmu Komunikasi 23 Perempuan NaN
4 105 Eva Teknik Elektro 22 Perempuan NaN
5 NaN NaN NaN NaN NaN Junior
6 NaN NaN NaN NaN NaN Senior
7 NaN NaN NaN NaN NaN Senior
8 NaN NaN NaN NaN NaN Sophomore
9 NaN NaN NaN NaN NaN Sophomore
F. Penggabungan Data dengan Metode Merge yang Kompleks #
Format Penggunaan:
merged_data = pd.merge(df1, df2, left_on='Kolom_Kiri', right_on='Kolom_Kanan', how='tipe_penggabungan')
Contoh Penggunaan:
merged_students_courses = pd.merge(students, courses, left_on='StudentID', right_on='ID', how='inner')
Penjelasan:
Metode merge yang kompleks digunakan ketika nama kolom kunci di kedua dataset tidak sama. Parameter left_on
dan right_on
digunakan untuk menentukan kolom kunci pada masing-masing dataset.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki Junior
1 102 Budi Manajemen Bisnis 22 Laki-laki Senior
2 103 Citra Akuntansi 21 Perempuan Senior
3 104 Diana Ilmu Komunikasi 23 Perempuan Sophomore
4 105 Eva Teknik Elektro 22 Perempuan Sophomore
G. Menggabungkan Data dengan Menggunakan Indeks sebagai Kunci #
Format Penggunaan:
merged_data = pd.merge(df1, df2, left_index=True, right_index=True, how='tipe_penggabungan')
Contoh Penggunaan:
merged_students_info = pd.merge(students, students_info, left_index=True, right_index=True, how='inner')
Penjelasan:
Dalam kasus di mana kunci penggabungan adalah indeks, kita dapat menggunakan parameter left_index dan right_index untuk menentukan bahwa indeks akan digunakan sebagai kunci.
Hasil Print:
NIM Nama Jurusan Usia Jenis_Kelamin Info
0 101 Agus Teknik Informatika 20 Laki-laki Junior
1 102 Budi Manajemen Bisnis 22 Laki-laki Senior
2 103 Citra Akuntansi 21 Perempuan Senior
3 104 Diana Ilmu Komunikasi 23 Perempuan Sophomore
4 105 Eva Teknik Elektro 22 Perempuan Sophomore