concat() di Pandas

Menumpuk beberapa DataFrame ke bawah (atau ke samping), misalnya menyatukan data per bulan.

Diperbarui · Tim Zennit.id

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)
BagianKeterangan
[df1, df2]Daftar DataFrame yang ditumpuk.
ignore_indexTrue untuk membuat ulang nomor index 0, 1, 2, …
axis0 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

idtanggalkaryawan_idprodukkategoriqtyharga
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
concat.py
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

tanggalprodukqty
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

  1. Data Januari dan Maret disaring jadi dua tabel terpisah.
  2. pd.concat menumpuk Maret di bawah Januari.
  3. ignore_index=True memberi 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()

Langkah berikutnya

Dari paham fungsi, ke siap kerja.

Belajar Python bareng mentor

Tahu fungsinya itu awal. Mengolah data kantor sampai jadi insight, itu skill.

Private Class Python & SQL untuk Data: dari Pandas dasar sampai membersihkan, merekap, dan memvisualisasikan data studi kasus kerja, dengan jadwal yang menyesuaikan kamu.

Lihat Private Class