Empat chapter sebelumnya merangkum: bentuk distribusi dikenali lewat sketsa, kemiringan diukur dengan skewness, posisi relatif dibaca lewat z-score, dan skala disatukan lewat standardisasi. Semua alat itu bekerja dengan asumsi diam bahwa kita tahu bagaimana data menyebar — padahal cara membaca sebaran itu sendiri belum kita bahas tuntas. Distribusi empiris adalah jawabannya: peta sebaran yang dibangun langsung dari data nyata, tanpa rumus model dan tanpa asumsi bentuk apa pun. Chapter penutup section ini membangun fungsi distribusi kumulatif empiris pada data sembilan siswa, menggambarkannya sebagai tangga, lalu memakainya untuk membaca persentil dan proporsi.

Distribusi dari Data Nyata #

Distribusi empiris adalah distribusi frekuensi yang dibangun semata-mata dari data yang terkumpul — seberapa banyak setiap nilai muncul, tanpa satu pun asumsi tentang kurva atau bentuk. Lawannya adalah distribusi teoretis: model matematis seperti kurva normal yang menentukan peluang lewat rumus, bukan lewat hitungan frekuensi. Sebenarnya kita telah bekerja dengan distribusi empiris sejak awal course: mean 83.33, median 84, dan seluruh statistik deskriptif kita dihitung dari distribusi empiris nilai sembilan siswa — kita hanya belum menyebut namanya.

Mengapa perlu nama dan pembahasan khusus? Karena rangkuman satu angka selalu kehilangan informasi. Mean dan median tidak menjawab “berapa banyak siswa bernilai di bawah 81”, dan histogram hanya menjawabnya per kelas. Distribusi empiris utuh — khususnya dalam bentuk fungsinya yang kumulatif — menjawab pertanyaan ambang seperti itu untuk setiap titik, dari data itu sendiri.

Fungsi Distribusi Kumulatif Empiris #

Alat utama distribusi empiris adalah fungsi distribusi kumulatif empiris (empirical cumulative distribution function, ECDF). Untuk setiap nilai x, ECDF menjawab: berapa proporsi data yang kurang dari atau sama dengan x?

text
F(x) = (banyaknya data <= x) / n

Sifatnya lugas mengikuti definisi. F(x) selalu berada di antara 0 dan 1; nilainya tidak pernah menurun ketika x membesar; F(x) = 0 untuk semua x di bawah data terkecil; dan F(x) = 1 mulai dari data terbesar ke atas. Membacanya sama seperti membaca persentil terbalik: F(81) = 0.44 berarti 44 persen data berada pada nilai 81 ke bawah, dan sisanya 56 persen di atasnya.

Tabel Kumulatif Data Sembilan Siswa #

Data nilai sembilan siswa sudah terurut, sehingga proporsi kumulatifnya bisa dihitung langsung (semua nilai F dibulatkan ke dua desimal):

xBanyak data ≤ xF(x)
6811/9 ≈ 0.11
7533/9 ≈ 0.33
8144/9 ≈ 0.44
8455/9 ≈ 0.56
8866/9 ≈ 0.67
9077/9 ≈ 0.78
9288/9 ≈ 0.89
9799/9 = 1.00

Dua hal perlu diperhatikan dari tabel. Pertama, nilai 75 muncul dua kali sehingga lompatan dari F(68) ke F(75) setinggi dua per sembilan — 0.11 langsung menjadi 0.33 — bukan satu per sembilan seperti loncatan lain. Kedua, F nilainya konstan di antara data: F(83) = F(75) = 0.33 karena tidak ada satu pun data di antara 75 dan 81; proporsi “nilai ≤ x” hanya bisa berubah tepat di titik tempat data berada.

Tangga ECDF #

Bila tabel digambar, hasilnya adalah tangga — grafik yang naik mendatar lalu melompat di setiap nilai data:

text
F(x)
1.00 |                             ┌───────────────>
0.89 |                         ┌───┘
0.78 |                     ┌───┘
0.67 |                 ┌───┘
0.56 |             ┌───┘
0.44 |         ┌───┘
0.33 |     ┌───┘
0.11 | ┌───┘
     +-+---+---+---+---+---+---+---+------------>  x
       68  75  81  84  88  90  92  97

Setiap anak tangga mendatar adalah wilayah antara dua nilai data bersebelahan, tempat F tidak berubah; setiap sudut naik adalah loncatan tepat di sebuah nilai data. Tinggi loncatan umumnya 1/9 ≈ 0.11 karena setiap siswa menyumbang satu dari sembilan data — kecuali di 75 yang meloncat dua kali lebih tinggi karena dua siswa bernilai sama. Label sumbu tegak adalah nilai F sesungguhnya (0.11, 0.33, dst.), bukan berjarak seragam; sumbu mendatar di kiri 68 adalah tingkat F = 0, tempat grafik mulai. Setelah melewati nilai terbesar 97, grafik tetap mendatar di tingkat 1.00.

Membaca Persentil dari Tangga #

ECDF juga dibaca dari arah sebaliknya: alih-alih mencari F pada sebuah x, kita mencari x terkecil yang membuat F(x) mencapai tingkat tertentu — persis definisi persentil. Ingin kuartil pertama, tingkat 0.25? Dari tangga: F(68) = 0.11 belum sampai, F(75) = 0.33 sudah melewatinya, sehingga Q1 = 75. Ingin kuartil ketiga, tingkat 0.75? F(88) = 0.67 belum sampai, F(90) = 0.78 sudah melewatinya, sehingga Q3 = 90. P = 0.25 dan P = 0.75 tercapai bukan tepat di tepi anak tangga, melainkan pada loncatan pertama yang melewatinya — itulah makna “x terkecil dengan F(x) ≥ tingkat”.

Angka Q1 = 75 dan Q3 = 90 ini persis hasil metode inclusive statistics.quantiles pada chapter Kuartil dan Persentil, sedangkan metode posisi (n + 1) di chapter itu menghasilkan Q3 = 91. Perbedaan 90 dan 91 kembali muncul karena dua konvensi membaca tingkat kumulatif secara berbeda — tidak ada yang salah, dan kebiasaan lama tetap berlaku: sebutkan metode saat melaporkan. Yang menarik, ECDF memperlihatkan dari mana metode inclusive berasal: kuartil dibaca langsung dari loncatan tangga kumulatif.

Empiris dan Teoretis #

Distribusi empiris dan teoretis menjawab pertanyaan yang mirip dengan cara yang berbeda. Empiris menjawab “berapa proporsi data yang tercatat di bawah x” dengan menghitung; teoretis menjawab “berapa peluang nilai berada di bawah x” dengan rumus model, dan kurva normal adalah anggotanya yang paling terkenal. Keduanya saling melengkapi: distribusi teoretis dibahas tuntas pada Section Variabel Acak dan Distribusi, dan salah satu kegunaan terpenting ECDF adalah menguji apakah sebuah model teoretis layak mewakili data — bila tangga empiris berjejak dekat dengan kurva model, model itu masuk akal; bila menjauh, model itu ditinggalkan.

Kekuatan sekaligus keterbatasan ECDF ada pada ketiadaan asumsinya. Kekuatannya: tangga ECDF berlaku untuk data apa pun — miring, bimodal, ber-ekor panjang — tanpa perlu memeriksa bentuk lebih dulu seperti pada aturan empiris 68-95-99.7. Keterbatasannya: ECDF mendeskripsikan data yang terkumpul, bukan mekanisme yang menghasilkan data; menyimpang dari data menuju peluang membutuhkan model teoretis dan asumsi. Membaca data dulu lewat ECDF, lalu memilih model, adalah urutan yang sehat.

Aplikasi: Proporsi Siswa Lulus #

Pertanyaan ambang adalah penggunaan ECDF yang paling sering muncul. Sekolah menetapkan kelulusan pada nilai 70 ke atas: berapa proporsi siswa kelas kita yang lulus? ECDF menjawab dengan satu hitungan: data bernilai ≥ 70 ada delapan dari sembilan, sehingga proporsi lulus = 8/9 ≈ 0.89 — sekitar 88.9 persen (dibulatkan ke satu desimal). Pertanyaan sejenis mengalir dengan cara yang sama: “berapa banyak siswa di bawah 85?” — F(85) = 5/9 ≈ 0.56, karena lima data (68, 75, 75, 81, 84) berada di 85 ke bawah.

Perhatikan apa yang tidak kita lakukan: tidak memeriksa bentuk distribusi, tidak menghitung skewness, tidak memasang kurva model. ECDF membaca proporsi langsung dari hitungan data — itulah makna “alat baca data tanpa asumsi bentuk”. Untuk sembilan data, hitungan terasa sepele; untuk ribuan data dengan ambang yang berganti-ganti, ECDF yang tersimpan sebagai tabel atau objek perangkat lunak menjawab setiap ambang seketika.

Menghitung Proporsi Kumulatif dengan Python #

Hitungan ECDF untuk setiap nilai data cukup dibangun dari sum dan pembandingan:

python
nilai = [68, 75, 75, 81, 84, 88, 90, 92, 97]
n = len(nilai)

for x in nilai:
    bawah = sum(1 for v in nilai if v <= x)
    print(f"F({x}) = {bawah}/{n} = {bawah / n:.2f}")

lulus = sum(1 for v in nilai if v >= 70)
print(f"proporsi nilai >= 70: {lulus}/{n} = {lulus / n:.2f}")

Output yang Dihasilkan:

text
F(68) = 1/9 = 0.11
F(75) = 3/9 = 0.33
F(75) = 3/9 = 0.33
F(81) = 4/9 = 0.44
F(84) = 5/9 = 0.56
F(88) = 6/9 = 0.67
F(90) = 7/9 = 0.78
F(92) = 8/9 = 0.89
F(97) = 9/9 = 1.00
proporsi nilai >= 70: 8/9 = 0.89

Mari kita bedah kode di atas:

  1. Baris 4-6 (loop ECDF): sum(1 for v in nilai if v <= x) menghitung banyaknya data yang kurang dari atau sama dengan x, lalu hasilnya dicetak sebagai pecahan dan desimal dua angka. Baris F(75) tercetak dua kali karena dua siswa bernilai sama — keduanya memang berbagi posisi kumulatif 3/9 yang sama.
  2. Baris 8-9 (proporsi lulus): penghitungan yang sama dengan syarat dibalik (>= 70) menghasilkan 8/9 ≈ 0.89, persis angka aplikasi kelulusan di atas.
  3. F(97) = 1.00: nilai terbesar selalu mencapai 1 — seluruh data berada di bawahnya atau sama dengannya.

SciPy juga menyediakan scipy.stats.ecdf yang mengemas perhitungan ini menjadi objek siap evaluasi di titik mana pun, dengan perilaku terdokumentasi dalam dokumentasi scipy.stats . Pembahasan formal ECDF beserta relasinya dengan persentil dirangkum oleh NIST/SEMATECH e-Handbook , dan pengantar ramahnya tersedia di OpenIntro Statistics .

Section Distribusi Data kini lengkap: kita membaca bentuk, mengukur kemiringan, memosisikan data dalam satuan standar, menyatukan skala, dan memetakan sebaran utuh dari data nyata. Semua itu mendeskripsikan frekuensi yang sudah terjadi — data sembilan siswa adalah kenyataan yang selesai terkumpul. Statistika juga bekerja ke arah sebaliknya: menalar tentang kejadian yang belum terjadi. Peluang adalah bahasanya, dan Section Dasar Probabilitas yang berikutnya memulainya dari peristiwa, ruang sampel, dan cara menghitungnya.