Buka buku statistika mana pun dan kita akan berpapasan dengan satu huruf Yunani: Σ (sigma besar). Rumus rata-rata, varians, korelasi, hingga rumus error pada machine learning semuanya memakai notasi ini. Sigma bukan konsep baru — ia hanya penulisan ringkas untuk kegiatan yang sudah kita lakukan berulang kali di dua chapter sebelumnya: menjumlahkan nilai demi nilai. Pada chapter ini kita belajar membaca notasi sigma, menerapkannya untuk rata-rata dan varians, lalu melihat bentuk lanjutannya: sigma ganda untuk data berbentuk tabel.
Membaca Notasi Sigma #
Notasi sigma menyatakan penjumlahan berulang dalam satu baris:
n
Σ x_i = x_1 + x_2 + ... + x_n
i=1Tiga bagiannya perlu dibaca cermat. Huruf Σ berarti “jumlahkan”. Tulisan kecil di bawah, i = 1, menyatakan indeks mulai; tulisan di atas, n, menyatakan indeks akhir. Sedangkan x_i adalah suku yang dijumlahkan — nilai ke-i dari kumpulan data. Sigma dengan batas i = 1 hingga n pada x_i artinya jumlahkan x_1, x_2, dan seterusnya sampai x_n.
Contoh konkret memperjelas. Lima transaksi pagi di Toko Kopi Kita bernilai 42, 18, 65, 30, dan 25 (ribuan rupiah); sigma atas nilai-nilai tersebut adalah 42 + 18 + 65 + 30 + 25. Loop for adalah terjemahan langsung notasi ini ke Python:
nilai_transaksi = [42, 18, 65, 30, 25] # nilai transaksi (ribuan rupiah)
jumlah = 0
for x in nilai_transaksi:
jumlah = jumlah + x
print(f"Jumlah seluruh transaksi: {jumlah} ribu rupiah")Output yang Dihasilkan:
Jumlah seluruh transaksi: 180 ribu rupiahMari kita telaah baris-baris kode di atas:
- Baris 3 (
jumlah = 0): variabel penampung — biasa disebut akumulator — dimulai dari nol karena penjumlahan tidak memiliki nilai awal lain. - Baris 4-5 (
for x in ...): loop berperan sebagai indeksiyang berjalan dari suku pertama hingga suku terakhir; setiap putaran menambahkan satux_ike akumulator. - Setelah loop selesai,
jumlahbernilai 180 — tepat hasil ekspansi sigma di atas.
Sigma untuk Rata-rata dan Varians #
Kekuatan notasi sigma baru terasa ketika ia menjadi bahan bangunan rumus lain. Dua rumus statistika paling dasar dibangun di atasnya:
rata-rata = ( Σ x_i ) / n
varians populasi = Σ (x_i - rata-rata)^2 / nRata-rata adalah sigma dibagi banyaknya data. Varians populasi mengukur sebaran: setiap nilai dikurangi rata-rata, dikuadratkan, dijumlahkan, lalu dibagi n. Kuadrat membuat selisih positif dan selisih negatif tidak saling menghapus. Kita hitung keduanya dengan dua loop:
data = [42, 18, 65, 30, 25]
n = len(data)
jumlah = 0
for x in data:
jumlah += x
rata_rata = jumlah / n
selisih_kuadrat = 0
for x in data:
selisih_kuadrat += (x - rata_rata) ** 2
varians = selisih_kuadrat / n
print(f"Rata-rata : {rata_rata}")
print(f"Varians populasi : {varians}")Output yang Dihasilkan:
Rata-rata : 36.0
Varians populasi : 271.6Loop pertama menghitung sigma biasa untuk rata-rata 36.0. Loop kedua menghitung sigma untuk suku yang berbeda, (x - rata-rata)^2 — bukti bahwa sigma tidak selalu menjumlahkan nilai mentah; yang dijumlahkan bisa hasil olahan dari setiap nilai. Angka 271.6 inilah ragam (varians) populasi lima transaksi tersebut; akar kuadratnya disebut simpangan baku dan akan sering kita jumpai pada Section statistika.
Cara Cepat: sum() dan NumPy #
Untuk pekerjaan harian, Python dan NumPy menyediakan pintasan untuk sigma. Ketiganya menghitung hal yang sama — pilihan hanya soal kecepatan menulis dan kecepatan eksekusi:
import numpy as np
data = np.array([42, 18, 65, 30, 25])
print(f"sum() bawaan : {sum(data)}")
print(f"np.sum() : {np.sum(data)}")
print(f"np.mean() : {np.mean(data)}")
print(f"np.var() : {np.var(data)}")Output yang Dihasilkan:
sum() bawaan : 180
np.sum() : 180
np.mean() : 36.0
np.var() : 271.6Hasil ketiga fungsi NumPy persis sama dengan loop manual kita: 180 untuk jumlah, 36.0 untuk rata-rata, dan 271.6 untuk varians. Python juga punya modul statistics bawaan dengan statistics.mean() dan statistics.pvariance(). NumPy menang ketika datanya besar — operasinya dijalankan di seluruh array sekaligus tanpa loop eksplisit; pembahasan penuhnya ada di chapter Dasar NumPy
.
Sigma Ganda untuk Data Berbentuk Tabel #
Data nyata jarang berupa satu deret angka; ia berbentuk tabel dengan baris dan kolom. Ketika kita perlu menjumlahkan seluruh isinya, notasi yang terpakai adalah sigma ganda — sigma di dalam sigma. Sigma luar berjalan pada indeks baris i, sigma dalam berjalan pada indeks kolom j:
jumlah total = Σ Σ penjualan[i][j]
i jTabel penjualan tiga hari untuk dua produk (kopi dan teh) memberi contoh konkret:
import numpy as np
# Baris = hari (Senin, Selasa, Rabu), kolom = produk (kopi, teh)
penjualan = [
[32, 15],
[40, 18],
[28, 21],
]
total_semua = 0
for i in range(len(penjualan)): # sigma luar: bergerak di baris
for j in range(len(penjualan[0])): # sigma dalam: bergerak di kolom
total_semua += penjualan[i][j]
print(f"Total penjualan 3 hari, semua produk: {total_semua}")
arr = np.array(penjualan)
print(f"Total semua (arr.sum()) : {arr.sum()}")
print(f"Total per produk (axis=0) : {arr.sum(axis=0).tolist()}")
print(f"Total per hari (axis=1) : {arr.sum(axis=1).tolist()}")Output yang Dihasilkan:
Total penjualan 3 hari, semua produk: 154
Total semua (arr.sum()) : 154
Total per produk (axis=0) : [100, 54]
Total per hari (axis=1) : [47, 58, 49]Loop bersarang di baris 9-12 adalah sigma ganda yang sesungguhnya: untuk setiap baris i, loop dalam menjumlahkan seluruh kolom j. Hasil 154 terbukti sama dengan arr.sum(). Menariknya, NumPy juga bisa meringkas sigma ganda sebagian — axis=0 menjumlahkan menuruni baris (total per produk: 100 gelas kopi, 54 gelas teh), sedangkan axis=1 menjumlahkan sepanjang kolom (total per hari). Struktur baris-kolom ini tepatnya adalah matriks, bahan utama dua chapter berikutnya.
Rangkuman #
- Sigma (
Σ) adalah notasi ringkas penjumlahan berulang; batas bawah dan atas menyatakan indeks awal dan akhir. - Loop
fordengan akumulator adalah terjemahan langsung sigma ke Python, dimulai dari nilai nol. - Rata-rata dan varians populasi adalah dua rumus penting pertama yang dibangun dari sigma.
sum(),np.sum(),np.mean(), dannp.var()adalah cara cepat yang hasilnya sama dengan loop manual.- Sigma ganda menjumlahkan data berbentuk tabel — sigma luar untuk baris, sigma dalam untuk kolom.
Sigma mengajari kita menyusun dan meringkas perhitungan berulang. Namun perhitungan seorang analis tidak berhenti pada menjumlahkan; ia juga perlu menjawab pertanyaan “pada nilai berapa sesuatu terjadi?” — berapa gelas agar laba positif, pada pekan berapa penjualan menyentuh target. Untuk itu kita perlu kemampuan menyelesaikan persamaan dan pertidaksamaan, materi chapter berikutnya.