Dalam ranah statistika inferensial, salah satu tantangan terbesar bagi peneliti adalah melakukan estimasi parameter populasi secara akurat berdasarkan keterbatasan data sampel yang dimiliki di lapangan. Interval Kepercayaan (Confidence Interval) hadir sebagai instrumen krusial untuk mengukur sejauh mana tingkat ketidakpastian (uncertainty) dari estimasi titik tersebut. Presisi dari instrumen ini umumnya direfleksikan melalui lebar rentang interval yang dihasilkan; semakin sempit rentang tersebut, semakin tinggi tingkat kepastian informasi yang diperoleh.

Secara teoretis, variasi lebar interval ini dipengaruhi oleh interaksi dinamis antara volume informasi (ukuran sampel), karakteristik internal data (variabilitas), serta asumsi batasan parameter populasi. Namun, pemahaman yang murni bersandar pada rumus analitis matematis sering kali gagal memberikan intuisi praktis bagi para analis data.

Oleh karena itu, eksperimen simulasi ini dirancang menggunakan Pendekatan Monte Carlo untuk mengevaluasi secara empiris sensitivitas lebar Interval Kepercayaan 95% di bawah kendali skenario faktorial penuh. Studi ini menguji tiga dimensi parameter kritis, yaitu:

  1. Skala Pengukuran (Sample Size): Meneliti transisi perilaku interval dari kondisi data sangat minim (\(n = 5\)), ambang batas normalitas (\(n = 30\)), hingga pemenuhan skala besar (\(n = 100\)).
  2. Volatilitas Internal (Data Variability): Mengukur magnitudo pelebaran interval ketika data bergerak dari kondisi homogen (\(\sigma = 10\)) menuju kondisi sangat heterogen (\(\sigma = 90\)).
  3. Ketersediaan Informasi Populasi (Prior Knowledge): Menguji dilema praktis di dunia nyata—ketika deviasi standar populasi diketahui secara pasti sehingga memvalidasi penggunaan nilai kritis \(Z\) (Z-score), dibandingkan dengan kondisi umum di mana deviasi standar populasi misterius, yang memaksa penggunaan estimasi varians sampel (\(s\)) dan nilai kritis \(t\) (t-score).

Melalui simulasi dengan replikasi empiris yang masif ini, diharapkan dapat dipetakan secara visual dan komprehensif bagaimana batas-batas teoretis tersebut bermanifestasi dalam data acak, sekaligus memberikan landasan intuitif yang kuat bagi pengambilan keputusan berbasis data sampel.


Kode Simulasi Empiris

Eksperimen ini menggunakan replikasi simulasi sebanyak \(M = 500\) kali untuk setiap kombinasi level faktor agar mendapatkan estimasi nilai rata-rata lebar interval yang stabil

set.seed(42)

ukuran_sampel <- c(5, 30, 100)
variabilitas  <- c(10, 50, 90)
pengetahuan   <- c("Diketahui", "Tidak Diketahui")

df_desain <- expand.grid(n = ukuran_sampel, sigma = variabilitas, status = pengetahuan)
df_desain$Rata_Lebar_Interval <- 0

M <- 500 

for(i in 1:nrow(df_desain)) {
  current_n <- df_desain$n[i]
  current_sigma <- df_desain$sigma[i]
  current_status <- df_desain$status[i]
  
  lebar_replikasi <- numeric(M)
  
  for(m in 1:M) {
    data_sampel <- rnorm(n = current_n, mean = 100, sd = current_sigma)
    s_sampel <- sd(data_sampel)
    if(current_status == "Diketahui") {
      margin_error <- qnorm(0.975) * (current_sigma / sqrt(current_n))
    } else {
      margin_error <- qt(0.975, df = current_n - 1) * (s_sampel / sqrt(current_n))
    }
    lebar_replikasi[m] <- 2 * margin_error
  }
  
  df_desain$Rata_Lebar_Interval[i] <- round(mean(lebar_replikasi), 4)
}

df_desain <- df_desain[order(df_desain$status, df_desain$sigma, df_desain$n), ]

Tabel Rangkuman Hasil Simulasi

knitr::kable(df_desain[, c("n", "sigma", "status", "Rata_Lebar_Interval")], 
             col.names = c("Ukuran Sampel (n)", "Variabilitas (Sigma)", "Pengetahuan SD", "Rata-rata Lebar Interval"),
             caption = "Tabel Pengaruh Skenario Sifat Data terhadap Lebar Interval")
Tabel Pengaruh Skenario Sifat Data terhadap Lebar Interval
Ukuran Sampel (n) Variabilitas (Sigma) Pengetahuan SD Rata-rata Lebar Interval
5 10 Diketahui 17.5305
30 10 Diketahui 7.1568
100 10 Diketahui 3.9199
5 50 Diketahui 87.6523
30 50 Diketahui 35.7839
100 50 Diketahui 19.5996
5 90 Diketahui 157.7741
30 90 Diketahui 64.4110
100 90 Diketahui 35.2794
5 10 Tidak Diketahui 22.8607
30 10 Tidak Diketahui 7.4440
100 10 Tidak Diketahui 3.9686
5 50 Tidak Diketahui 121.3562
30 50 Tidak Diketahui 36.9378
100 50 Tidak Diketahui 19.6748
5 90 Tidak Diketahui 203.1554
30 90 Tidak Diketahui 66.5383
100 90 Tidak Diketahui 35.5509

Visualisasi Tren

par(mfrow = c(1, 2), mar = c(4, 4, 3, 1))

df_diketahui <- subset(df_desain, status == "Diketahui")
plot(1, type = "n", xlim = c(1, 3), ylim = c(0, max(df_desain$Rata_Lebar_Interval)),
     xaxt = "n", xlab = "Ukuran Sampel (n)", ylab = "Rata-rata Lebar Interval",
     main = "SD Populasi: Diketahui")
axis(1, at = 1:3, labels = c("5", "30", "100"))

lines(1:3, df_diketahui$Rata_Lebar_Interval[df_diketahui$sigma == 10], col = "darkgreen", type = "b", lwd = 2, pch = 16)
lines(1:3, df_diketahui$Rata_Lebar_Interval[df_diketahui$sigma == 50], col = "blue", type = "b", lwd = 2, pch = 17)
lines(1:3, df_diketahui$Rata_Lebar_Interval[df_diketahui$sigma == 90], col = "red", type = "b", lwd = 2, pch = 18)

legend("topright", legend = c("Sigma 10", "Sigma 50", "Sigma 90"), 
       col = c("darkgreen", "blue", "red"), lty = 1, pch = 16:18, cex = 0.8)

df_tidak_diketahui <- subset(df_desain, status == "Tidak Diketahui")
plot(1, type = "n", xlim = c(1, 3), ylim = c(0, max(df_desain$Rata_Lebar_Interval)),
     xaxt = "n", xlab = "Ukuran Sampel (n)", ylab = "Rata-rata Lebar Interval",
     main = "SD Populasi: Tidak Diketahui")
axis(1, at = 1:3, labels = c("5", "30", "100"))

lines(1:3, df_tidak_diketahui$Rata_Lebar_Interval[df_tidak_diketahui$sigma == 10], col = "darkgreen", type = "b", lwd = 2, pch = 16)
lines(1:3, df_tidak_diketahui$Rata_Lebar_Interval[df_tidak_diketahui$sigma == 50], col = "blue", type = "b", lwd = 2, pch = 17)
lines(1:3, df_tidak_diketahui$Rata_Lebar_Interval[df_tidak_diketahui$sigma == 90], col = "red", type = "b", lwd = 2, pch = 18)

legend("topright", legend = c("Sigma 10", "Sigma 50", "Sigma 90"), 
       col = c("darkgreen", "blue", "red"), lty = 1, pch = 16:18, cex = 0.8)

par(mfrow = c(1, 1))

Interpretasi Hasil

Hasil simulasi empiris di atas menunjukkan pembuktian teori ketidakpastian estimasi sebagai berikut:

  1. Ukuran Sampel (\(n\)): Ketika sampel dinaikkan dari \(n=5\) ke \(n=100\), lebar interval menyempit secara drastis pada seluruh skenario. Hal ini membuktikan hukum dasar statistika bahwa penambahan data memperkecil nilai Standard Error. Semakin banyak informasi sampel yang dikumpulkan, tingkat ketidakpastian estimasi parameter rata-rata populasi akan semakin mengecil (presisi meningkat).
  2. Variabilitas Data (\(\sigma\)): Semakin besar nilai variabilitas (dari 10 menuju 90), interval yang dihasilkan terbukti semakin melebar tinggi. Data yang memiliki fluktuasi besar mempersulit estimasi titik secara konsisten, sehingga rentang ketidakpastian harus diperluas agar tingkat kepercayaan selang tetap terjaga di angka 95%.
  3. Pengetahuan Standar Deviasi: Pada kondisi sampel kecil (\(n=5\)), kelompok “Tidak Diketahui” menghasilkan selang interval yang jauh lebih lebar dibanding kelompok “Diketahui”. Hal ini terjadi karena penggunaan distribusi t-Student memberikan penalti berupa rentang yang lebih longgar guna menutupi ketidakpastian akibat estimasi varians dari sampel (\(s\)). Namun saat sampel masuk ke skala besar (\(n=100\)), selisih lebar di antara keduanya menghilang karena nilai distribusi \(t\) secara matematis mulai konvergen mendekati karakteristik distribusi normal standar (\(Z\)).