Teorema Central Limit

Dilansir dari laman SAINSDATA.ID(2025), Teorema Central Limit menyatakan bahwa semakin besar sampel acak yang diambil maka distribusi rata-rata dari sampel acak tersebut akan semakin mendekati distribusi normal, tanpa memperhatikan bentuk distribusi asalnya selama varians populasi terbatas.

Untuk membuktikan teorema tersebut, saya melakukan simulasi sebagai berikut.

library(probs) # library untuk menggunakan fungsi urnsamples
## Warning: package 'probs' was built under R version 4.4.3
## 
## Attaching package: 'probs'
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, union
# Uji dengan distribusi Poisson
set.seed(3)
par(mfrow=c(1, 3))
Pois_Data <- rpois(15, 20)

n1 = 2
Sampel1 <- urnsamples(Pois_Data, size = n1, replace = FALSE) 
mean_1 <- apply(Sampel1, MARGIN = 1, FUN =mean)

n2 = 5
Sampel2 <- urnsamples(Pois_Data, size = n2, replace = FALSE) 
mean_2 <- apply(Sampel2, MARGIN = 1, FUN =mean)

n3 = 10
Sampel3 <- urnsamples(Pois_Data, size = n3, replace = FALSE) 
mean_3 <- apply(Sampel3, MARGIN = 1, FUN =mean)


hist(mean_1, main = "Histogram sampel Poisson (n = 2)", xlab = "Rata-rata Sampel", col = "lightblue")
hist(mean_2, main = "Histogram sampel Poisson (n = 5)", xlab = "Rata-rata Sampel", col = "skyblue")
hist(mean_3, main = "Histogram sampel Poisson (n = 10)", xlab = "Rata-rata Sampel", col = "skyblue")

# Uji dengan distribusi Geometri
set.seed(3)
par(mfrow=c(1, 3))
Geo_Data <- rgeom(15, 0.3)

n1 = 2
Sampel1 <- urnsamples(Geo_Data, size = n1, replace = FALSE) 
mean_1 <- apply(Sampel1, MARGIN = 1, FUN =mean)

n2 = 5
Sampel2 <- urnsamples(Geo_Data, size = n2, replace = FALSE) 
mean_2 <- apply(Sampel2, MARGIN = 1, FUN =mean)

n3 = 10
Sampel3 <- urnsamples(Geo_Data, size = n3, replace = FALSE) 
mean_3 <- apply(Sampel3, MARGIN = 1, FUN =mean)


hist(mean_1, main = "Histogram Sampel Geometri(n = 2)", xlab = "Rata-rata Sampel", col = "orange")
hist(mean_2, main = "Histogram Sampel Geometri(n = 5)", xlab = "Rata-rata Sampel", col = "orange")
hist(mean_3, main = "Histogram Sampel Geometri,n = 10", xlab = "Rata-rata Sampel", col = "orange")

# Uji dengan distribusi Eksponensial
set.seed(3)
par(mfrow=c(1, 3))
Exp_Data <- rexp(15)

n1 = 2
Sampel1 <- urnsamples(Exp_Data, size = n1, replace = FALSE) 
mean_1 <- apply(Sampel1, MARGIN = 1, FUN =mean)

n2 = 5
Sampel2 <- urnsamples(Exp_Data, size = n2, replace = FALSE) 
mean_2 <- apply(Sampel2, MARGIN = 1, FUN =mean)

n3 = 8
Sampel3 <- urnsamples(Exp_Data, size = n3, replace = FALSE) 
mean_3 <- apply(Sampel3, MARGIN = 1, FUN =mean)


hist(mean_1, main = "Histogram Sampel Eks (n = 2)", xlab = "Rata-rata Sampel", col = "lightgreen")
hist(mean_2, main = "Histogram Sampel Eks (n = 5)", xlab = "Rata-rata Sampel", col = "lightgreen")
hist(mean_3, main = "Histogram Sampel Eks (n = 8)", xlab = "Rata-rata Sampel", col = "lightgreen")

Dari ketiga Output di atas, kita dapat lihat bahwa semakin besar ukuran sampel pada pengambilan sampel acak maka distribusi rata-rata sampel-sampel acak yang diambil semakin mendekati distribusi normal. Hal ini ditandai dengan grafik yang semakin simetris pada kanan dan kirinya atau berbentuk menyerupai lonceng. Jadi, Teorema Central Limit Terbukti.

Ketidakbiasan Penduga Parameter

Parameter dan Statistik

Di dalam buku yang ditulis oleh Spiegel dan Stephens (2018) disebutkan bahwa suatu statistik disebut penduga tak bias jika rata-rata disribusi sampel dari statistic sama dengan parameter populasi. Jika dalam suatu persamaan maka ekspetasi statistik sama dengan parameter. #### Penduga Mean Di dalam buku Bain disebutkan bahwa $ E({x}) = $ di mana: \[ \bar{X} = \frac{\sum_{i=1}^{n} X_i}{n} \]

# Sebaran Poisson
set.seed(3)
Populasi_Poiss <- rpois(15, 5)
sampelPois_S <- urnsamples(Populasi_Poiss, size = 6, replace = FALSE)
MeanPop_Pois <- mean(Populasi_Poiss)
E.MeanSam_Pois <- mean(apply(sampelPois_S, MARGIN = 1, mean))

# Sebaran Geometri
Populasi_Geo <- rgeom(15, 0.6)
sampelGeom_S <- urnsamples(Populasi_Geo, size = 6, replace = FALSE)
MeanPop_Geo <- mean(Populasi_Geo)
E.MeanSam_Geo <- mean(apply(sampelGeom_S, MARGIN = 1, mean))

# Sebaran Eksponensial
Populasi_Eks <- rexp(15)
sampelEks_S <- urnsamples(Populasi_Eks, size = 6, replace = FALSE)
MeanPop_Eks <- mean(Populasi_Eks)
E.MeanSam_Eks <- mean(apply(sampelEks_S, MARGIN = 1, mean))

# Data Frame
data.frame(Keterangan = c("Mean Populasi", "Ekspetasi x-bar"), Sebaran_Poisson = c(MeanPop_Pois, E.MeanSam_Pois),
           Sebaran_Geometri = c(MeanPop_Geo, E.MeanSam_Geo), Sebaran_Eksponensial = c(MeanPop_Eks, E.MeanSam_Eks))
##        Keterangan Sebaran_Poisson Sebaran_Geometri Sebaran_Eksponensial
## 1   Mean Populasi        4.866667        0.6666667            0.9385579
## 2 Ekspetasi x-bar        4.866667        0.6666667            0.9385579

Dari Output di atas terlihat bahwa $ E({x}) = $ sehingga \(\bar{x}\) merupakan penduga tak bias dari \(\mu\). #### Penduga Varians Di dalam buku Bain disebutkan bahwa $ E(S^2) = ^2 $ di mana: \[ S^2 = \frac{\sum_{i=1}^{n}{X_i^2}-n\bar{X}^2}{n-1} \]

# Fungsi penduga varians yang ada di buku Bain
var_829 <- function(x) {
  n <- length(x)
  (sum(x^2) - n * mean(x)^2) / (n - 1)
}

# Fungsi varians populasi (pembagi N)
var_pop <- function(x) {
  mean((x - mean(x))^2)
}

# Sebaran Poisson
set.seed(3)
Populasi_Poiss <- rpois(15, 5)
sampelPois_S <- urnsamples(Populasi_Poiss, size = 6, replace = FALSE)
VarPop_Pois <- var_pop(Populasi_Poiss)
E.VarSam_Pois <- mean(apply(sampelPois_S, 1, var_829))

# Sebaran Geometri
Populasi_Geo <- rgeom(15, 0.6)
sampelGeom_S <- urnsamples(Populasi_Geo, size = 6, replace = FALSE)
VarPop_Geo <- var_pop(Populasi_Geo)
E.varSam_Geo <- mean(apply(sampelGeom_S, 1, var_829))

# Sebaran Eksponensial
Populasi_Eks <- rexp(15)
sampelEks_S <- urnsamples(Populasi_Eks, size = 6, replace = FALSE)
VarPop_Eks <- var_pop(Populasi_Eks)
E.varSam_Eks <- mean(apply(sampelEks_S, 1, var_829))

# Data Frame
data.frame(
  Keterangan = c("Varians Populasi", "Ekspektasi S^2"),
  Sebaran_Poisson = c(VarPop_Pois, E.VarSam_Pois),
  Sebaran_Geometri = c(VarPop_Geo, E.varSam_Geo),
  Sebaran_Eksponensial = c(VarPop_Eks, E.varSam_Eks)
)
##         Keterangan Sebaran_Poisson Sebaran_Geometri Sebaran_Eksponensial
## 1 Varians Populasi        1.982222         1.022222            0.6579195
## 2   Ekspektasi S^2        2.123810         1.095238            0.7049137

Berdasarkan teori, varians sampel memenuhi sifat:\(E(S^2) = \sigma^2\) yang menunjukkan bahwa varians sampel merupakan penduga tak bias bagi varians populasi.

Namun, berdasarkan hasil perhitungan diperoleh bahwa nilai ekspektasi \(S^2\) tidak sama persis dengan varians populasi. Perbedaan ini disebabkan oleh penggunaan populasi terbatas (finite population) dengan ukuran yang relatif kecil serta pengambilan sampel tanpa pengembalian. Akibatnya, distribusi sampel yang terbentuk tidak sepenuhnya memenuhi asumsi pengambilan sampel acak independen, sehingga nilai ekspektasi empiris hanya mendekati varians populasi, bukan sama persis.

Meskipun demikian, nilai ekspektasi \(S^2\) tetap berada di sekitar varians populasi, sehingga secara umum hasil ini masih mendukung bahwa \(S^2\) merupakan penduga tak bias.

Selang Kepercayaan

Selang kepercayaan merupakan suatu interval yang digunakan untuk menduga parameter populasi, seperti rata-rata populasi (μ), dengan tingkat kepercayaan tertentu. #### Selang Kepercayaan Untuk Mean Di dalam buku yang ditulis oleh Spiegel dan Stephens (2018) disebutkan bahwa selang kepercayaan untuk mean populasi diberikan dengan: a. Jika sampling dari populasi tak terbatas atau sampel dengan pengembalian pada populasi terbatas \[ \bar{X} \pm z_c \frac{\sigma}{\sqrt{N}} \] b. Jika sampel tanpa pengembalian pada populasi terbatas \[ \bar{X} \pm z_c \frac{\sigma}{\sqrt{N}}\sqrt{\frac{N_p-N}{N_p-1}} \] Ket: \(\bar{X}\): Mean Sampel \(z_c\): Titik kristis z (normal standar) \(\sigma\): Standar deviasi populasi \(N_p\): Ukuran populasi \(N\): Ukuran sampel

Karena terkadang \(\sigma\) tidak diketahui maka kita bisa menggunakan \(s\) (standar deviasi sampel). Dalam buku Bain disebutkan bahwa ketika kita menggunakan standar deviasi sampel \(s\) dalam selang kepercayaan mean, maka statistik \(z_c\) digantikan oleh \(t_{1-\frac{\alpha}{2},\, n-1}\), yaitu kuantil dari distribusi t-Student dengan derajat bebas \(n-1\).

Selang Kepercayaan Untuk Proporsi

Di dalam buku yang ditulis oleh Spiegel dan Stephens (2018) disebutkan bahwa jika sampel dengan ukuran \(N\) yang diambil dari populasi binomial di mana \(p\) adalah proporsi sukses, selang kepercayaannya adalah sebagai berikut. a. Jika sampling dari populasi tak terbatas atau sampel dengan pengembalian pada populasi terbatas \[ P \pm z_c \sqrt{\frac{pq}{N}}=P \pm z_c \sqrt{\frac{p(1-p)}{N}} \] b. Jika sampel tanpa pengembalian pada populasi terbatas \[ P \pm z_c \sqrt{\frac{pq}{N}}\sqrt{\frac{N_p-N}{N_p-1}} \]

Selang Kepercayaan Untuk Perpedaan dan Penjumlahan

Di dalam buku yang ditulis oleh Spiegel dan Stephens (2018) disebutkan bahwa jika \(S_1\) \(S_2\) adalah dua satistik sampel dengan sampel distribusi yang mendekati normal: - Selang kepercayaan untuk perbedaan parameter populasi: \[ S_1-S_2 \pm z_c \sigma_{S_1-S_2} = S_1-S_2 \pm z_c \sqrt{\sigma_{S_1}^2+\sigma_{S_2}^2} \] - Selang kepercayaan untuk penjumlahan parameter populasi: \[ S_1+S_2 \pm z_c \sigma_{S_1+S_2} = S_1+S_2 \pm z_c \sqrt{\sigma_{S_1}^2+\sigma_{S_2}^2} \]

Selang Kepercayaan Untuk Standar Deviasi

Di dalam buku yang ditulis oleh Spiegel dan Stephens (2018) disebutkan bahwa selang kepercayaan untuk standar deviasi \(\sigma\) dari suatu populasi berdistribusi normal diestimasi dengan standar deviasi sampel \(s\): \[ s \pm z_c \sigma_s = s \pm z_c \frac{\sigma}{\sqrt{2N}}\] Karena terkadang \(\sigma\) tidak diketahui maka kita bisa menggunakan \(s\) (standar deviasi sampel).

Contoh Aplikasi di R

# Sampel dengan pengembalian pada populasi terbatas
set.seed(3)
N <- 31  # Ukuran Sampel
PopulasiSimulasi <- rpois(45, 10)
mu <- round(mean(PopulasiSimulasi), 3)  # Parameter Populasi (mu)
sampelSimulasi <- sample(PopulasiSimulasi, size = N, replace = TRUE)

Mean_Sampel <- mean(sampelSimulasi)    # statistik
sd_sampel <- sd(sampelSimulasi)        # Standar Deviasi Sampel
alfha <- 0.05                          # Tingkat Kepercayaan 95%
t_c <-  qt(0.975, df = N - 1)  # Nilai Titik Kritis (Student) karena σ tidak diketahui

Batas_Bawah <- round(Mean_Sampel - t_c * (sd_sampel/sqrt(N)),3)
Batas_Atas <- round(Mean_Sampel + t_c * (sd_sampel/sqrt(N)), 3)

Selang_Kepercayaan <- paste(Batas_Bawah, "≤ mu ≤", Batas_Atas, sep = " ")

data.frame(Selang_Kepercayaan_Mean = Selang_Kepercayaan, mu = mu)  # Membuat hasil dalam bentuk tabel
##   Selang_Kepercayaan_Mean    mu
## 1     8.428 ≤ mu ≤ 10.475 9.622

Referensi

Alkahfi, C. (2025, July 5). Memahami Teorema Limit Pusat Menggunakan Data Simulasi. SAINSDATA.ID. https://sainsdata.id/statistika/13457/memahami-teorema-limit-pusat-menggunakan-data-simulasi/

Bain, L. J., & Engelhardt, M. (1992). Introduction To Probability and Mathematical Statistics (2nd ed.). Duxbury Press.

Spiegel, M. R., & Stephens, L. J. (2018). Schaum’s Outlines Statistics (6th ed.). McGraw-Hill Education.