Section Statistika Deskriptif menutup dengan satu kejujuran: mean 83.33, median 84, dan standar deviasi 9.41 tidak berarti apa-apa bila disampaikan sebagai tiga angka lepas dalam tiga kalimat. Hasil perhitungan perlu dirangkai agar pembaca menangkapnya sekali pandang, dan bentuk perangkai paling tua sekaligus paling andal adalah tabel. Tabel sering dianggap bukan visualisasi karena tidak memakai batang atau garis, padahal susunan baris-kolomnya melakukan pekerjaan yang persis sama: mengurutkan, mengelompokkan, dan membandingkan informasi. Chapter ini merangkai tabel-tabel yang paling sering dijumpai dalam analisis data, mulai dari rekap tabel frekuensi hingga tabel pivot, lalu menutup dengan kebiasaan penyajian yang membedakan tabel yang mudah dibaca dari tabel yang membuat pembaca berhenti di baris kedua.

Tabel sebagai Visualisasi Paling Sederhana #

Definisi kerjanya sederhana: tabel menyandingkan label pada baris dengan ukuran pada kolom, lalu membiarkan mata pembaca mengikuti pola susunannya. Baris sejenis diletakkan berdekatan, kolom disusun dari kiri ke kanan mengikuti urutan baca, dan angka sejenis sejajar pada kolom yang sama. Ketika tiga syarat itu terpenuhi, mata pembaca membandingkan isi sel tanpa membaca satu per satu — itulah mengapa tabel termasuk keluarga visualisasi, bukan sekadar wadah angka.

Kekuatan terbesar tabel ada pada ketepatan. Grafik batang sangat baik untuk memperlihatkan bahwa penjualan kopi susu jauh di atas espresso, tetapi pembaca hanya memperkirakan angka 120 atau 30 dari tinggi batang, tidak membacanya dengan pasti. Tabel menyerahkan nilai persisnya secara langsung, sehingga menjadi pilihan utama ketika pembaca perlu mengutip, menghitung ulang, atau menggabungkan angka dengan data lain — laporan keuangan tetap berbentuk tabel persis karena alasan ini.

Rekap Singkat Tabel Frekuensi #

Bentuk tabel pertama sudah kita miliki: tabel frekuensi pada chapter Tabel Frekuensi merangkum 30 nilai ulangan ke dalam lima kelas. Rekapnya sebagai berikut, dengan seluruh angka identik dengan chapter aslinya.

Kelas NilaiFrekuensiFrekuensi Relatif (%)
60-64310.0
65-69620.0
70-74930.0
75-79723.33
80-84516.67
Total30100.0

Dua fitur tabel ini akan kita tiru sepanjang section: kolom frekuensi relatif membuat perbandingan antarbaris jujur (kelas terpadat menyumbang 30 persen, bukan sekadar “paling banyak”), dan baris total memverifikasi bahwa seluruh 30 data terhitung. Tabel frekuensi sekaligus bahan baku visualisasi berikutnya — histogram pada chapter Histogram digambar persis dari tabel ini.

Tabel Ringkasan Statistik #

Ketika statistik deskriptif dihitung untuk beberapa kelompok sekaligus, bentuk penyajiannya adalah tabel ringkasan: baris memuat kelompok, kolom memuat statistik. Contoh berikut membandingkan dua kelas paralel — Kelas A adalah dataset sembilan siswa yang menemani kita sejak chapter Mean, sedangkan Kelas B berisi sembilan nilai yang sebarannya lebih rapat.

KelompoknMinMaxMeanMedianStandar Deviasi
Kelas A9689783.33849.41
Kelas B9749082.22824.79

Kolomnya sengaja disusun logis dari kiri ke kanan: identitas kelompok (n), batas sebaran (min, max), ukuran pemusatan (mean, median), lalu ukuran penyebaran (standar deviasi). Cara bacanya berlapis. Kedua kelas nyaris setara di pemusatan — mean 83.33 berbanding 82.22 — sehingga nilai rata-rata saja akan menyimpulkan “dua kelas sama saja”. Kolom penyebaran membantah kesimpulan itu: nilai Kelas A tipikalnya menyimpang 9.41 poin dari mean, hampir dua kali simpangan tipikal Kelas B yang hanya 4.79 poin. Rentang batas bawah-atas juga menceritakan hal yang sama, dari 29 poin pada Kelas A menjadi 16 poin pada Kelas B. Seluruh angka pada tabel di atas direplikasi dengan Python:

python
import statistics

kelas_a = [68, 75, 75, 81, 84, 88, 90, 92, 97]
kelas_b = [74, 78, 80, 81, 82, 83, 85, 87, 90]

for nama, data in [("Kelas A", kelas_a), ("Kelas B", kelas_b)]:
    print(nama, round(statistics.mean(data), 2), statistics.median(data),
          round(statistics.stdev(data), 2), min(data), max(data))

Output yang Dihasilkan:

text
Kelas A 83.33 84 9.41 68 97
Kelas B 82.22 82 4.79 74 90

Mari kita bedah kode di atas:

  1. Baris 6 (for nama, data in ...): satu perulangan memproses kedua kelas sekaligus; setiap iterasi mencetak satu baris dengan format sama sehingga hasilnya sejajar seperti baris tabel.
  2. Baris 7 (round(statistics.mean(data), 2)): mean Kelas A adalah 750/9 = 83.333… dan Kelas B 740/9 = 82.222…; keduanya dibulatkan ke dua desimal agar konsisten dengan tabel, dan jumlah desimalnya disebut eksplisit.
  3. Baris 7 (statistics.stdev(data)): standar deviasi sampel Kelas B berakar dari varians 22.94 (dibulatkan ke dua desimal) sehingga hasilnya 4.79 — kontras dengan 9.41 milik Kelas A menegaskan bahwa perbedaan kedua kelas ada di penyebaran, bukan di mean.

Tabel Satu Arah dan Tabel Silang #

Tabel satu arah (one-way table) merangkum satu variabel kategorik. Kafe kecil kita menjual lima jenis kopi dengan penjualan rata-rata per hari sebagai berikut — dataset yang sama akan menemani chapter Diagram Batang.

Jenis KopiCangkir per HariFrekuensi Relatif (%)
Kopi susu12035.29
Americano8525.00
Latte6017.65
Matcha4513.24
Espresso308.82
Total340100.0

Tabel silang (two-way table, disebut juga tabel kontinjensi) menambahkan variabel kedua sehingga setiap sel memuat banyak observasi untuk satu kombinasi baris-kolom. Survei fiktif terhadap 50 responden menanyakan preferensi transportasi ke kampus, disilangkan dengan jenis kelamin:

Jenis KelaminBusKRLOjek DaringTotal
Laki-laki812525
Perempuan129425
Total2021950

Angka tepinya sengaja dihitung dan diverifikasi: setiap baris berjumlah 25 (8 + 12 + 5 dan 12 + 9 + 4), kolom berjumlah 20, 21, dan 9 (8 + 12, 12 + 9, 5 + 4), dan total 50 muncul konsisten dari dua arah — 25 + 25 maupun 20 + 21 + 9. Ketika baris dan kolom tidak berjumlah sama, ada data yang hilang atau terhitung dua kali. Dari isi selnya terbaca dua pola: KRL moda terpopuler secara keseluruhan (21 responden), sedangkan bus justru lebih dipilih perempuan (12 berbanding 8). Apakah pola demikian kebetulan atau bermakna akan diuji formal pada chapter Chi-Square Test di Section Pengujian Hipotesis.

Tabel Pivot Sederhana #

Data transaksi mentah biasanya berbentuk satu baris per kejadian — satu baris per cangkir kopi terjual. Tabel pivot adalah alat melipatnya menjadi agregat per kombinasi kategori: kelompokkan baris menurut satu variabel, bagi kolom menurut variabel lain, lalu isi sel dengan jumlah atau rata-rata. Tabel berikut melipat penjualan dua hari menjadi jenis kopi × hari:

Jenis KopiSeninSelasaRata-rata Harian
Kopi susu120130125
Americano859590
Latte607065
Matcha455550
Espresso304035
Total340390365

Sel rata-rata dihitung dari dua sel di kirinya, misalnya kopi susu (120 + 130)/2 = 125, dan kolom total dihitung dari penjumlahan kolom: Senin 340, Selasa 390, dengan rata-rata gabungan (340 + 390)/2 = 365 cangkir per hari. Di Python, operasi lipat semacam ini dikerjakan function pivot_table pada pandas — kita mempraktikkannya pada chapter Analisis Data dengan Pandas di Section Statistika dengan Python; rincian fungsinya tercantum dalam dokumentasi pandas .

Kapan Tabel Mengalahkan Grafik #

Aturan praktisnya ditentukan kebutuhan pembaca, bukan selera pembuat. Tabel menang ketika pembaca membutuhkan nilai persis untuk dikutip atau dihitung ulang, ketika angkanya akan diaudit, atau ketika barisnya sedikit sehingga pola sudah terbaca tanpa bantuan grafik. Grafik menang ketika pesan utamanya adalah bentuk pola: tren naik-turun, perbedaan yang mencolok, atau sebaran yang tidak merata. Keduanya sering hadir bersama — grafik di badan laporan untuk menyampaikan pesan, tabel di lampiran untuk mendokumentasikan angkanya. Panduan penyajian keduanya dalam praktik analisis data dirangkum dalam NIST/SEMATECH e-Handbook .

Best Practice Penyajian Tabel #

Empat kebiasaan kecil ini membedakan tabel yang terbaca cepat dari tabel yang harus diurai. Pertama, susun kolom mengikuti urutan baca dan logika: identitas di kiri, lalu ukuran yang dibandingkan — pola n-min-max-mean-median-sd pada tabel ringkasan kelas di atas. Kedua, letakkan satuan di judul kolom seperti “Cangkir per Hari” atau “Harga (Rp/kg)”, bukan di setiap sel; satuan yang hilang memaksa pembaca menebak apakah 340 berarti cangkir, liter, atau transaksi. Ketiga, ratakan angka ke kanan agar digit satuan sejajar vertikal sehingga perbandingan besaran dilakukan mata, bukan dengan membaca tiap angka; label teks tetap rata kiri. Keempat, bulatkan konsisten dan sebutkan jumlah desimalnya, seperti mean 83.33 dan 82.22 yang sama-sama dibulatkan ke dua desimal.

Tabel menang ketika kejujuran angka menjadi prioritas, tetapi ketika pesannya adalah perbandingan besar-kecil yang ingin ditangkap dalam sepersekian detik, susunan baris dan kolom mulai kalah oleh bentuk visual yang lebih tegas. Perkenalkan, anggota keluarga grafik yang paling populer: diagram batang, topik chapter berikutnya — dan lima jenis kopi kita akan menjadi bahan latihan pertamanya.