Penjelasan sederhana
Seperti copy-paste data bulan Maret ke bawah data Januari di Excel. Syaratnya, nama kolomnya sama.
Sintaks
pd.concat([df1, df2, ...], ignore_index=False, axis=0)
| Bagian | Keterangan |
|---|---|
[df1, df2] | Daftar DataFrame yang ditumpuk. |
ignore_index | True untuk membuat ulang nomor index 0, 1, 2, … |
axis | 0 menumpuk ke bawah, 1 menempel ke samping. |
df adalah nama DataFrame (tabel) yang sedang diolah. Contoh di bawah memakai import pandas as pd dan import numpy as np, yang sudah disiapkan otomatis.
Contoh concat()
Data contoh: penjualan (sudah tersedia sebagai DataFrame)
DataFrame penjualan
| id | tanggal | karyawan_id | produk | kategori | qty | harga |
|---|---|---|---|---|---|---|
| 1 | 2026-01-05 | 4 | Laptop | Elektronik | 2 | 8500000 |
| 2 | 2026-01-12 | 6 | Printer | Elektronik | 1 | 2300000 |
| 3 | 2026-01-20 | 4 | Kursi Kantor | Furnitur | 5 | 1200000 |
| 4 | 2026-02-03 | 6 | Laptop | Elektronik | 1 | 8500000 |
| 5 | 2026-02-14 | 4 | Meja Kerja | Furnitur | 3 | 1750000 |
| 6 | 2026-02-25 | 5 | Kertas A4 | ATK | 20 | 55000 |
| 7 | 2026-03-02 | 6 | Kursi Kantor | Furnitur | 4 | 1200000 |
| 8 | 2026-03-10 | 4 | Printer | Elektronik | 2 | 2300000 |
| 9 | 2026-03-18 | 5 | Kertas A4 | ATK | 30 | 55000 |
| 10 | 2026-03-27 | 6 | Monitor | Elektronik | 3 | 1900000 |
jan = penjualan[penjualan['tanggal'].str.startswith('2026-01')]
mar = penjualan[penjualan['tanggal'].str.startswith('2026-03')]
pd.concat([jan, mar], ignore_index=True)[['tanggal', 'produk', 'qty']]
Hasil 7 baris × 3 kolom
| tanggal | produk | qty |
|---|---|---|
| 2026-01-05 | Laptop | 2 |
| 2026-01-12 | Printer | 1 |
| 2026-01-20 | Kursi Kantor | 5 |
| 2026-03-02 | Kursi Kantor | 4 |
| 2026-03-10 | Printer | 2 |
| 2026-03-18 | Kertas A4 | 30 |
| 2026-03-27 | Monitor | 3 |
Transaksi Januari dan Maret ditumpuk menjadi satu tabel dengan index baru 0 sampai 6.
Cara kerjanya, langkah demi langkah
- Data Januari dan Maret disaring jadi dua tabel terpisah.
pd.concatmenumpuk Maret di bawah Januari.ignore_index=Truememberi nomor baris baru.
Dipakai untuk apa di kantor?
- Menyatukan laporan per cabang atau per bulan yang formatnya sama.
- Menambah baris baru ke data yang sudah ada.
Kesalahan yang sering terjadi
- Nama kolom berbeda sedikit (Qty vs qty), sehingga muncul kolom baru berisi NaN.
- Memakai concat untuk mencocokkan data berdasarkan kunci; itu tugas
merge().
Progres bab Menggabungkan Tabel
0/2 dipelajari
Lanjut: rank()