Confidence Interval~ Week 13

Lulu Najla Salsabila

INSTITUT TEKNOLOGI SAINS BANDUNG

1 Case Study 1

Interval Kepercayaan untuk Rata-Rata, σ Diketahui: Sebuah platform e-commerce ingin memperkirakan rata-rata jumlah transaksi harian per pengguna setelah meluncurkan fitur baru. Berdasarkan data historis skala besar, simpangan baku populasi diketahui

\[ \begin{eqnarray*} \sigma &=& 3.2 \quad \text{(population standard deviation)} \\ n &=& 100 \quad \text{(sample size)} \\ \bar{x} &=& 12.6 \quad \text{(sample mean)} \end{eqnarray*} \]

Tugas

  1. Identifikasi uji statistik yang tepat dan jelaskan alasannya.
  2. Hitung Interval Kepercayaan untuk:
    • \(90\%\)
    • \(95\%\)
    • \(99\%\)
  3. Buat visualisasi perbandingan dari ketiga interval kepercayaan tersebut.
  4. Interpretasikan hasilnya dalam konteks analisis bisnis.

Jawaban

1.1 Uji Statistik yang Digunakan

Uji statistik yang tepat untuk Case Study 1 adalah Confidence Interval untuk Mean dengan standar deviasi populasi diketahui (Z-Test / Z-Interval).

Alasan Pemilihan Uji Statistik

Pemilihan Z-Interval didasarkan pada pertimbangan berikut:

1. Parameter yang diestimasi adalah rata-rata populasi (μ)

Tujuan analisis adalah mengestimasi rata-rata jumlah transaksi harian per pengguna, bukan proporsi atau varians.

2. Standar deviasi populasi (σ) diketahui

Dari data historis berskala besar, diketahui bahwa:

\[ \sigma = 3.2 \]

Ketika σ diketahui, maka distribusi sampling dari rata-rata mengikuti distribusi normal (Z).

3. Ukuran sampel besar (n ≥ 30)

Ukuran sampel:

\[ n = 100 \]

Dengan n besar, Central Limit Theorem (CLT) menjamin bahwa distribusi rata-rata sampel mendekati normal, meskipun distribusi populasi awal tidak sepenuhnya normal.

4. Data berskala numerik (kontinu)

Variabel yang dianalisis adalah jumlah transaksi harian per user, yang dapat diperlakukan sebagai data numerik kontinu.

1.2 Hitung Interval Kepercayaan

1. Confidence Interval 90%

Diketahui

  • Rata-rata sampel:

\[ \bar{x} = 12.6 \]

  • Standar deviasi populasi:

\[ \sigma = 3.2 \]

  • Ukuran sampel:

\[ n = 100 \]

Rumus Confidence Interval (σ diketahui):

\[ \bar{x} \pm Z_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \]

1. Confidence Level 90%

\[ \alpha = 1 - 0.90 = 0.10 \]

\[ \frac{\alpha}{2} = 0.05 \]

Nilai kritis:

\[ Z_{0.05} = 1.645 \]

Hitung Standard Error (SE):

\[ SE = \frac{\sigma}{\sqrt{n}} = \frac{3.2}{\sqrt{100}} = \frac{3.2}{10} = 0.32 \]

Margin of Error:

\[ ME = 1.645 \times 0.32 = 0.5264 \]

Confidence Interval:

Lower Limit:

\[ LL = 12.6 - 0.5264 = 12.07 \]

Upper Limit:

\[ UL = 12.6 + 0.5264 = 13.13 \]

\[ \boxed{(12.07,\; 13.13)} \]

2. Confidence Interval 95%

\[ \alpha = 1 - 0.95 = 0.05 \]

\[ \frac{\alpha}{2} = 0.025 \]

Nilai kritis Z:

\[ Z_{0.025} = 1.96 \]

Margin of Error:

\[ ME = 1.96 \times 0.32 = 0.6272 \]

Confidence Interval:

Lower Limit:

\[ LL = 12.6 - 0.6272 = 11.97 \]

Upper Limit:

\[ UL = 12.6 + 0.6272 = 13.23 \]

\[ \boxed{(11.97,\; 13.23)} \]

3. Confidence Interval 99%

\[ \alpha = 1 - 0.99 = 0.01 \]

\[ \frac{\alpha}{2} = 0.005 \]

Nilai kritis:

\[ Z_{0.005} = 2.576 \]

Margin of Error:

\[ ME = 2.576 \times 0.32 = 0.8243 \]

Confidence Interval:

Lower Limit:

\[ LL = 12.6 - 0.8243 = 11.78 \]

Upper Limit:

\[ UL = 12.6 + 0.8243 = 13.42 \]

\[ \boxed{(11.78,\; 13.42)} \]

1.3 Visualisai

library(ggplot2)

mean <- 12.6
se <- 0.32

ci_levels <- data.frame(
  level = factor(c("90%", "95%", "99%"), levels = c("90%", "95%", "99%")),
  z = c(1.645, 1.96, 2.576)
)
ci_levels$lower <- mean - ci_levels$z * se
ci_levels$upper <- mean + ci_levels$z * se

x <- seq(mean - 4*se, mean + 4*se, length.out = 1000)
curve_data <- data.frame(x = x, y = dnorm(x, mean, se))

shade_data <- do.call(rbind, lapply(1:nrow(ci_levels), function(i){
  x_shade <- seq(ci_levels$lower[i], ci_levels$upper[i], length.out = 200)
  y_shade <- dnorm(x_shade, mean, se)
  data.frame(x = x_shade, y = y_shade, level = ci_levels$level[i])
}))

# Label di kanan, tapi masih dalam panel
labels <- data.frame(
  level = ci_levels$level,
  x = ci_levels$upper,
  y = max(curve_data$y) * c(0.85, 0.8, 0.75),
  label = paste0(
    "Mean = 12.6\n",
    "CI: [",
    round(ci_levels$lower,2),
    ", ",
    round(ci_levels$upper,2),
    "]"
  )
)

ggplot() +
  geom_line(data = curve_data, aes(x = x, y = y), size = 1) +
  geom_ribbon(data = shade_data, aes(x = x, ymin = 0, ymax = y, fill = level), alpha = 0.35) +
  geom_vline(xintercept = mean, linetype = "dashed") +
  geom_text(data = labels, aes(x = x, y = y, label = label),
            hjust = 0, nudge_x = 0.3, size = 3.5) +  # nudge_x = geser ke kanan
  facet_wrap(~ level, ncol = 1) +
  scale_x_continuous(expand = expansion(mult = c(0.05, 0.25))) + # ruang ekstra kanan
  labs(
    title = "Confidence Intervals for Mean Daily Transactions",
    subtitle = "Shaded area = CI, dashed line = sample mean",
    x = "Average Daily Transactions",
    y = "Density"
  ) +
  theme_minimal() +
  theme(legend.position = "none")

1.4 Interpretasi

Hasil confidence interval menunjukkan bahwa rata-rata jumlah transaksi harian per pengguna berada pada rentang 12.07–13.13 (90%), 11.97–13.23 (95%), dan 11.78–13.42 (99%). Semakin tinggi tingkat kepercayaan, semakin lebar interval estimasi, yang mencerminkan trade-off antara tingkat keyakinan dan presisi.

Dalam konteks business analytics, confidence interval 95% merupakan pilihan yang paling seimbang karena memberikan estimasi yang cukup presisi dengan tingkat keandalan yang tinggi. Informasi ini dapat digunakan manajemen untuk perencanaan kapasitas sistem, evaluasi kinerja fitur atau promosi, serta pengambilan keputusan berbasis risiko dengan mempertimbangkan batas bawah dan batas atas estimasi.

2 Case Study 2

Interval Kepercayaan untuk Rata-Rata, σ Tidak Diketahui: Sebuah tim Penelitian UX menganalisis waktu penyelesaian tugas (dalam menit) untuk aplikasi seluler baru. Data dikumpulkan dari 12 pengguna:

\[ 8.4,\; 7.9,\; 9.1,\; 8.7,\; 8.2,\; 9.0,\; 7.8,\; 8.5,\; 8.9,\; 8.1,\; 8.6,\; 8.3 \] Tugas:

  1. Identifikasi uji statistik yang tepat dan jelaskan alasannya.
  2. Hitung Interval Kepercayaan untuk:
    • \(90\%\)
    • \(95\%\)
    • \(99\%\)
  3. Visualisasikan ketiga interval tersebut dalam satu grafik.
  4. Jelaskan bagaimana ukuran sampel dan tingkat kepercayaan memengaruhi lebar interval.

JAWABAN

2.1 Uji Statistik Yang digunakan

Uji statistik yang digunakan dalam studi kasus ini adalah one-sample t-confidence interval (t-interval) untuk mengestimasi rata-rata waktu penyelesaian tugas pengguna.

Pemilihan uji ini didasarkan pada beberapa pertimbangan berikut:

1. Jenis Variabel yang Dianalisis

Variabel yang digunakan dalam studi ini adalah waktu penyelesaian tugas, yang diukur dalam satuan menit. Variabel ini bersifat numerik dan kontinu, sehingga metode statistik berbasis rata-rata (mean) dapat diterapkan secara tepat.

2. Ukuran Sampel

Jumlah observasi dalam penelitian ini adalah 12 pengguna (n = 12). Ukuran sampel ini tergolong kecil (n < 30), sehingga estimasi parameter populasi memiliki tingkat ketidakpastian yang relatif tinggi.

3. Informasi Simpangan Baku Populasi

Dalam studi ini, simpangan baku populasi (σ) tidak diketahui. Peneliti hanya memiliki data sampel sehingga simpangan baku dihitung menggunakan simpangan baku sampel (s). Kondisi ini merupakan syarat utama penggunaan distribusi t-Student dibandingkan distribusi normal (Z).

4. Pemilihan Distribusi Statistik

Berdasarkan ukuran sampel yang kecil dan tidak diketahuinya simpangan baku populasi, distribusi yang paling tepat untuk digunakan adalah distribusi t-Student. Distribusi ini memiliki ekor yang lebih tebal dibandingkan distribusi normal, sehingga memberikan interval kepercayaan yang lebih konservatif dan realistis.

5. Derajat Bebas (Degrees of Freedom)

Distribusi t-Student yang digunakan memiliki derajat bebas (df) yang dihitung sebagai:

\[ df = n - 1 = 12 - 1 = 11 \]

Derajat bebas ini menentukan nilai kritis t yang digunakan dalam perhitungan confidence interval.

2.2 Hitung Interval Kepercayaan

Dari data diperoleh:

- Rata Rata Sample:

Waktu penyelesaian tugas (menit):

\[ 8.4,\; 7.9,\; 9.1,\; 8.7,\; 8.2,\; 9.0,\; 7.8,\; 8.5,\; 8.9,\; 8.1,\; 8.6,\; 8.3 \]

Jumlah data:

\[ n = 12 \]

Rumus Mean Sampel

\[ \bar{x} = \frac{\sum x_i}{n} \]

Jumlahkan semua data:

\[ \sum x_i = 8.4 + 7.9 + 9.1 + 8.7 + 8.2 + 9.0 + 7.8 + 8.5 + 8.9 + 8.1 + 8.6 + 8.3 = 101.5 \]

Bagi dengan jumlah sampel:

\[ \bar{x} = \frac{101.5}{12} = 8.46 \]

Rata-rata sampel:

\[ \bar{x} = 8.46 \]

- Simpangan baku sampel:

\[ s^2 = \frac{1}{n-1}\sum (x_i - \bar{x})^2 \]

\[ \sum (x_i - \bar{x})^2 \approx 1.94 \]

\[ s = \sqrt{\frac{1.94}{11}} = \sqrt{0.176} \approx 0.42 \]

- Derajat Kebebasan:

\[ df = 12 - 1 = 11 \]

1. Kritis t nilsi untuk 90 %

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.90 = 0.10 \]

\[ \frac{\alpha}{2} = 0.05 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 12 - 1 = 11 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.05,\; df = 11\) diperoleh nilai t kritis:

\[ t_{0.05,\;11} = 1.796 \]

3. Rumus Umum:

\[ \bar{x} \pm t_{\alpha/2,\;df} \times \frac{s}{\sqrt{n}} \]

4. Standard Error:

Standard error dihitung menggunakan rumus:

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{0.42}{\sqrt{12}} \approx 0.12 \]

5. Margin Of Eror:

\[ ME = 1.796 \times 0.12 = 0.22 \]

6. Confidence Interval:

\[ CI_{90\%} = \bar{x} \pm ME \]

\[ CI_{90\%} = 8.46 \pm 0.22 \]

\[ \boxed{(8.24,\; 8.68)} \]

2. Kritis t nilai untuk 95%

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.95 = 0.05 \]

karena interval bersifat dua sisi, maka:

\[ \frac{\alpha}{2} = 0.025 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 12 - 1 = 11 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.025,\; df = 11\) diperoleh nilai t kritis:

\[ t_{0.025,\;11} = 2.201 \]

3. Standard Error:

Standard error dihitung menggunakan rumus:

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{0.42}{\sqrt{12}} \approx 0.12 \]

4. Margin of Error \[ ME = t \times SE \]

\[ ME = 2.201 \times 0.12 = 0.27 \]

5. Interval Kepercayaan:

interval kepercayaan dengan distribusi t adalah:

\[ CI = \bar{x} \pm ME \]

\[ CI_{95\%} = 8.46 \pm 0.27 \]

Sehingga diperoleh interval kepercayaan:

\[ \boxed{(8.19,\; 8.73)} \]

3. Kritis t nilai untuk 99%

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.99 = 0.01 \]

Karena interval bersifat dua sisi, maka:

\[ \frac{\alpha}{2} = 0.005 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 12 - 1 = 11 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.005,\; df = 11\), diperoleh nilai t kritis:

\[ t_{0.005,\;11} = 3.106 \]

3.Standard Error:

Standard error dihitung menggunakan rumus:

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{0.42}{\sqrt{12}} \approx 0.12 \]

4. Margin of Error: \[ ME = t \times SE \]

\[ ME = 3.106 \times 0.12 = 0.38 \]

5. Interval Kepercayaan:

Rumus interval kepercayaan dengan distribusi t adalah:

\[ CI = \bar{x} \pm ME \]

\[ CI_{99\%} = 8.46 \pm 0.38 \]

Sehingga diperoleh interval kepercayaan:

\[ \boxed{(8.08,\; 8.84)} \]

2.3 Visualisasi

library(ggplot2)

# =========================
# DATA
# =========================
xdata <- c(8.4, 7.9, 9.1, 8.7, 8.2, 9.0, 7.8, 8.5, 8.9, 8.1, 8.6, 8.3)

n <- length(xdata)
mean_x <- mean(xdata)
sd_x <- sd(xdata)
se <- sd_x / sqrt(n)

levels <- c(0.90, 0.95, 0.99)

# =========================
# BUILD DATA
# =========================
plot_df  <- data.frame()
label_df <- data.frame()

for (lv in levels) {

  tcrit  <- qt(1 - (1 - lv)/2, df = n - 1)
  margin <- tcrit * se
  lower  <- mean_x - margin
  upper  <- mean_x + margin

  x <- seq(mean_x - 4*sd_x, mean_x + 4*sd_x, length.out = 400)
  y <- dnorm(x, mean_x, sd_x)

  lvl_label <- sprintf("%d%%", lv * 100)

  plot_df <- rbind(
    plot_df,
    data.frame(
      x = x,
      y = y,
      level = lvl_label,
      lower = lower,
      upper = upper,
      mean = mean_x
    )
  )

  label_df <- rbind(
    label_df,
    data.frame(
      level = lvl_label,
      label = sprintf(
        "Mean = %.2f\nCI = [%.2f , %.2f]",
        mean_x, lower, upper
      ),
      x = max(x),
      y = max(y) * 0.85
    )
  )
}

# =========================
# PLOT
# =========================
ggplot(plot_df, aes(x = x, y = y)) +
  geom_line(aes(group = level), color = "black") +
  geom_area(
    data = subset(plot_df, x >= lower & x <= upper),
    aes(group = level),
    fill = "skyblue",
    alpha = 0.45
  ) +
  geom_vline(
    aes(xintercept = mean),
    linetype = "dashed"
  ) +
  geom_text(
    data = label_df,
    aes(x = x, y = y, label = label),
    hjust = 1,
    size = 3.3
  ) +
  facet_wrap(~level, ncol = 1, scales = "free_y") +
  labs(
    title = "Confidence Intervals for Mean Task Completion Time",
    subtitle = "Shaded area = confidence interval, dashed line = sample mean",
    x = "Task Completion Time (minutes)",
    y = "Density"
  ) +
  theme_minimal()

Visualisasi ini menunjukkan confidence interval (CI) untuk rata-rata waktu penyelesaian tugas berdasarkan data sampel. Garis putus-putus menunjukkan mean sampel, sedangkan area berwarna biru menandai CI pada tiga tingkat kepercayaan berbeda: 90%, 95%, dan 99%. Dari plot ini terlihat bahwa semakin tinggi tingkat kepercayaan, lebar interval semakin besar; hal ini karena semakin tinggi keyakinan yang diinginkan, semakin luas rentang nilai rata-rata populasi yang mungkin berada di dalam interval. Panel terpisah memudahkan perbandingan CI pada tiap tingkat kepercayaan, sedangkan label teks di kanan panel memberikan informasi numerik mengenai nilai mean dan batas CI, misalnya “Mean = 8.52, CI = [8.06 , 8.97]”, yang artinya kita 95% yakin rata-rata waktu penyelesaian populasi berada di antara 8.06 dan 8.97 menit.

2.4 Pertanyaan

1. Jelaskan Bagaimana Ukuran sampledan tingkat kepercayaan memengaruhi lebar interval?

Lebar interval kepercayaan dipengaruhi oleh ukuran sampel dan tingkat kepercayaan yang digunakan. Secara matematis, lebar interval ditentukan oleh margin of error yang bergantung pada nilai kritis distribusi statistik dan standard error. Ukuran sampel berpengaruh melalui standard error, di mana semakin besar ukuran sampel, nilai standard error akan semakin kecil sehingga interval kepercayaan menjadi lebih sempit. Hal ini terjadi karena data yang lebih banyak memberikan informasi yang lebih akurat mengenai parameter populasi. Sebaliknya, tingkat kepercayaan memengaruhi nilai kritis distribusi t, di mana semakin tinggi tingkat kepercayaan yang dipilih, semakin besar nilai kritis yang digunakan, sehingga interval kepercayaan menjadi lebih lebar. Dengan demikian, terdapat trade-off antara presisi dan tingkat keyakinan, di mana interval yang sempit memberikan estimasi yang lebih presisi, sedangkan interval yang lebih lebar memberikan tingkat kepercayaan yang lebih tinggi terhadap estimasi rata-rata populasi.

3 Case Study 3

Interval Kepercayaan untuk Proporsi, Pengujian A/B: Sebuah tim ilmu data menjalankan pengujian A/B pada desain tombol Call-To-Action (CTA) baru. Eksperimen menghasilkan:

\[ \begin{eqnarray*} n &=& 400 \quad \text{(total users)} \\ x &=& 156 \quad \text{(users who clicked the CTA)} \end{eqnarray*} \]

Tugas:

  1. Hitung sample proportion \(\hat{p}\).
  2. Hitung Interval Kepercayaan untuk proporsi pada::
    • \(90\%\)
    • \(95\%\)
    • \(99\%\)
  3. Visualisasikan dan bandingkan ketiga interval tersebut.
  4. Jelaskan bagaimana tingkat kepercayaan memengaruhi pengambilan keputusan dalam eksperimen produk.

JAWABAN

3.1 Hitung Proporsi Sample

Diketahui

  • Jumlah total pengguna

\[ n = 400 \]

  • Jumlah pengguna yang klik CTA

\[ x = 156 \]

Hitung Sample Proportion \(\hat{p}\)

\[ \hat{p} = \frac{x}{n} = \frac{156}{400} = 0.39 \]

Artinya, 39% pengguna mengklik CTA.

3.2 Hitung Interval Kepercayaan:

1. Tingkat Kepercayaan 90%:

  • Tingkat signifikansi:

\[ \alpha = 1 - 0.90 = 0.10 \]

  • Karena interval dua sisi:

\[ \frac{\alpha}{2} = 0.05 \]

  • Nilai kritis dari tabel Z:

\[ z_{0.05} = 1.645 \]

2. Rumus Confidence Interval Proporsi:

\[ CI = \hat{p} \pm z_{\alpha/2} \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

3. Hitung Standard Error (SE):

\[ SE = \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

\[ SE = \sqrt{\frac{0.39(1-0.39)}{400}} \]

\[ SE = \sqrt{\frac{0.39 \cdot 0.61}{400}} \]

\[ SE = \sqrt{\frac{0.2379}{400}} \]

\[ SE = \sqrt{0.00059475} \]

\[ SE \approx 0.0244 \]

4. Margin of Error (ME): \[ ME = z_{\alpha/2} \times SE \]

\[ ME = 1.645 \times 0.0244 \]

\[ ME \approx 0.0401 \]

5. Confidence Interval 90%

\[ CI_{90\%} = \hat{p} \pm ME \]

\[ CI_{90\%} = 0.39 \pm 0.0401 \]

\[ CI_{90\%} \approx (0.3499,\; 0.4301) \]

2. Tingkat Kepercayaan 95%:

1. Tingkat Kepercayaan

  • Significance level:

\[ \alpha = 1 - 0.95 = 0.05 \]

  • Dua sisi:

\[ \frac{\alpha}{2} = 0.025 \]

  • Nilai kritis tabel Z:

\[ z_{0.025} = 1.96 \]

2. Rumus Confidence Interval Proporsi:

\[ CI = \hat{p} \pm z_{\alpha/2} \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

3. Standard Error (SE):

\[ SE = \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

\[ SE = \sqrt{\frac{0.39(1-0.39)}{400}} \]

\[ SE = \sqrt{\frac{0.39 \cdot 0.61}{400}} \]

\[ SE = \sqrt{\frac{0.2379}{400}} \]

\[ SE = \sqrt{0.00059475} \]

\[ SE \approx 0.0244 \]

4. Margin of Error (ME):

\[ ME = z_{\alpha/2} \times SE \]

\[ ME = 1.96 \times 0.0244 \]

\[ ME \approx 0.0478 \]

5. Confidence Interval 95%:

\[ CI_{95\%} = \hat{p} \pm ME \]

\[ CI_{95\%} = 0.39 \pm 0.0478 \]

\[ CI_{95\%} \approx (0.3422,\, 0.4378) \]

3. Tingkat Kepercayaan 99%:

1. Tingkat Kepercayaan

  • Significance level:

\[ \alpha = 1 - 0.99 = 0.01 \]

  • Dua sisi:

\[ \frac{\alpha}{2} = 0.005 \]

  • Nilai kritis tabel Z:

\[ z_{0.005} = 2.576 \]

2. Rumus Confidence Interval Proporsi:

\[ CI = \hat{p} \pm z_{\alpha/2} \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

3. Standard Error (SE):

\[ SE = \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

\[ SE = \sqrt{\frac{0.39(1-0.39)}{400}} \]

\[ SE = \sqrt{\frac{0.39 \cdot 0.61}{400}} \]

\[ SE = \sqrt{\frac{0.2379}{400}} \]

\[ SE = \sqrt{0.00059475} \]

\[ SE \approx 0.0244 \]

4. Margin of Error (ME):

\[ ME = z_{\alpha/2} \times SE \]

\[ ME = 2.576 \times 0.0244 \]

\[ ME \approx 0.0629 \]

5. Confidence Interval 99%:

\[ CI_{99\%} = \hat{p} \pm ME \]

\[ CI_{99\%} = 0.39 \pm 0.0629 \]

\[ CI_{99\%} \approx ((0.327,\, 0.453) \]

3.3 Visualisasi

library(ggplot2)

# Data kasus
n <- 400
x <- 156
p_hat <- x / n
se <- sqrt(p_hat * (1 - p_hat) / n)

# Bell curve
x_vals <- seq(p_hat - 4*se, p_hat + 4*se, length.out = 1000)
df_curve <- data.frame(
  x = x_vals,
  y = dnorm(x_vals, mean = p_hat, sd = se)
)

# Confidence levels + warna
levels <- data.frame(
  conf = c("90%", "95%", "99%"),
  z = c(1.645, 1.96, 2.576),
  fill = c("darkorange2", "seagreen4", "purple4")
)

# Gabungkan data
df_plot <- merge(df_curve, levels)

# Hitung CI
df_plot$lower <- p_hat - df_plot$z * se
df_plot$upper <- p_hat + df_plot$z * se

# 👉 POSISI TEKS KHUSUS PER PANEL (INI KUNCINYA)
ci_label <- data.frame(
  conf = c("90%", "95%", "99%"),
  label = paste0(
    "CI = [",
    round(p_hat - levels$z * se, 3),
    ", ",
    round(p_hat + levels$z * se, 3),
    "]"
  ),
  x = rep(max(x_vals), 3),
  y = c(
    max(df_curve$y) * 0.85,
    max(df_curve$y) * 0.75,
    max(df_curve$y) * 0.65
  )
)

# Plot
ggplot(df_plot, aes(x, y)) +
  geom_line(color = "black", linewidth = 1) +
  geom_area(
    data = subset(df_plot, x >= lower & x <= upper),
    aes(fill = conf),
    alpha = 0.5
  ) +
  geom_vline(xintercept = p_hat, linetype = "dashed") +
  geom_text(
    data = ci_label,
    aes(x = x, y = y, label = label),
    hjust = 1,
    size = 4,
    inherit.aes = FALSE
  ) +
  facet_wrap(~ conf, ncol = 1) +
  scale_fill_manual(values = c(
    "90%" = "darkorange2",
    "95%" = "seagreen4",
    "99%" = "purple4"
  )) +
  labs(
    title = "Bell Curve with Confidence Intervals",
    subtitle = "Confidence Interval values shown on the right",
    x = "Sample Proportion (p̂)",
    y = "Density"
  ) +
  theme_minimal() +
  theme(legend.position = "none")

Grafik ini menampilkan kurva kepadatan (density) untuk proporsi sampel \(\hat{p} = 0.39\) berdasarkan distribusi normal aproksimasi. Kurva berbentuk bell menunjukkan distribusi probabilitas dari proporsi sampel; titik puncak kurva berada di nilai \(\hat{p}\), menunjukkan proporsi yang paling mungkin berdasarkan sampel. Tingkat kepercayaan yang berbeda (90%, 95%, 99%) memengaruhi margin of error dan lebar interval, yang tercermin dari titik-titik pada kurva. Semakin tinggi tingkat kepercayaan, semakin besar jarak dari mean ke ujung interval, menunjukkan bahwa untuk keyakinan lebih tinggi, rentang nilai proporsi populasi yang dicakup oleh interval menjadi lebih luas. Kurva ini memberikan pemahaman visual tentang ketidakpastian estimasi proporsi dan bagaimana distribusi normal dapat digunakan untuk membangun confidence interval.

3.4 Pertanyaan

  1. Jelaskan Bagaimana tingkat kepercayaan memengaruhi pengambilan keputusan dalam eksperimen produk?

Confidence level memengaruhi cara pengambilan keputusan dalam eksperimen produk karena menentukan seberapa besar tingkat keyakinan terhadap hasil estimasi. Semakin tinggi confidence level yang digunakan, semakin lebar confidence interval yang dihasilkan, sehingga estimasi menjadi lebih konservatif. Pada A/B testing, confidence level 90% memungkinkan pengambilan keputusan yang lebih cepat karena intervalnya lebih sempit, namun memiliki risiko kesalahan yang lebih tinggi. Confidence level 95% umumnya digunakan sebagai standar karena memberikan keseimbangan antara tingkat keyakinan dan ketepatan keputusan. Sementara itu, confidence level 99% digunakan ketika risiko kesalahan sangat besar, karena menghasilkan interval yang paling lebar dan mendorong pengambilan keputusan yang lebih berhati-hati. Oleh karena itu, pemilihan confidence level harus disesuaikan dengan tingkat risiko, urgensi keputusan, dan dampak bisnis dari eksperimen produk yang dilakukan.

4 Case Study 4

Perbandingan Presisi (Uji-Z vs Uji-t): Dua tim data mengukur laten API (dalam milidetik) dalam kondisi yang berbeda.

\[\begin{eqnarray*} \text{Team A:} \\ n &=& 36 \quad \text{(sample size)} \\ \bar{x} &=& 210 \quad \text{(sample mean)} \\ \sigma &=& 24 \quad \text{(known population standard deviation)} \\[6pt] \text{Team B:} \\ n &=& 36 \quad \text{(sample size)} \\ \bar{x} &=& 210 \quad \text{(sample mean)} \\ s &=& 24 \quad \text{(sample standard deviation)} \end{eqnarray*}\]

Tugas

  1. Identifikasi uji statistik yang digunakan oleh masing-masing tim.
  2. Hitung Interval Kepercayaan untuk 90%, 95%, and 99%.
  3. Buat visualisasi untuk membandingkan semua interval.
  4. Jelaskan mengapa lebar interval berbeda, meskipun datanya serupa.

JAWABAN

4.1 Identifikasi Uji Statistik yang digunakan

Pada studi kasus ini, tujuan kedua tim adalah mengestimasi rata-rata (mean) latency API menggunakan confidence interval. Perbedaan uji statistik yang digunakan ditentukan oleh informasi tentang standar deviasi yang tersedia.

Tim A menggunakan Z-test karena standar deviasi populasi (σ) diketahui, yaitu sebesar 24 ms. Ketika σ diketahui dan ukuran sampel cukup besar (n = 36), distribusi sampling dari rata-rata dapat diasumsikan mengikuti distribusi normal. Oleh karena itu, nilai kritis yang digunakan untuk membentuk confidence interval berasal dari distribusi normal baku (Z).

Tim B menggunakan t-test karena standar deviasi populasi tidak diketahui. Tim B hanya memiliki standar deviasi dari sampel (s = 24), sehingga variabilitas populasi harus diestimasi dari data sampel. Kondisi ini menyebabkan adanya ketidakpastian tambahan, sehingga digunakan distribusi t-Student dengan derajat bebas \(df = n - 1 = 35\) Distribusi t memiliki ekor yang lebih tebal dibanding distribusi normal, yang mencerminkan ketidakpastian tersebut.

4.2 Hitung Interval Kepercayaan

TEAM A

Diketahui

  • Ukuran sampel:

\[ n = 36 \]

  • Rata-rata sampel:

\[ \bar{x} = 210 \]

  • Standar deviasi populasi:

\[ \sigma = 24 \]

1. Confidence Interval 90%:

  • Tingkat signifikansi:

\[ \alpha = 1 - 0.90 = 0.10 \]

  • Karena dua sisi:

\[ \frac{\alpha}{2} = 0.05 \]

  • Nilai distribusi Z:

\[ z_{0.05} = 1.645 \]

2. Rumus Confidence Interval (σ diketahui):

\[ \bar{x} \pm Z_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \]

3. Standard Error (SE):

\[ SE = \frac{\sigma}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

4. Margin of Error:

\[ ME = z_{\alpha/2} \times SE \]

\[ ME = 1.645 \times 4 \]

\[ ME = 6.58 \]

5. Confidence Interval (CI);

\[ CI_{90\%} = \bar{x} \pm ME \]

\[ CI_{90\%} = 210 \pm 6.58 \]

\[ CI_{90\%} \approx (203.42,\; 216.58) \]

1. Confidence Interval 95%:

  • Tingkat signifikansi:

\[ \alpha = 1 - 0.95 = 0.05 \]

  • Karena dua sisi:

\[ \frac{\alpha}{2} = 0.025 \]

  • Nilai distribusi Z:

\[ z_{0.025} = 1.96 \]

2. Rumus Confidence Interval (σ diketahui):

\[ \bar{x} \pm Z_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \]

3. Standard Error (SE):

\[ SE = \frac{\sigma}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

4. Margin of Error:

\[ ME = z_{\alpha/2} \times SE \]

\[ ME = 1.96 \times 4 \]

\[ ME = 7.84 \]

5. Confidence Interval (CI);

\[ CI_{95\%} = \bar{x} \pm ME \]

\[ CI_{95\%} = 210 \pm 7.84 \]

\[ CI_{95\%} \approx (202.16,\; 217.84) \]

1. Confidence Interval 99%:

Tingkat signifikansi:

\[ \alpha = 1 - 0.99 = 0.01 \]

  • Karena dua sisi:

\[ \frac{\alpha}{2} = 0.005 \]

  • Nilai distribusi Z:

\[ z_{0.005} = 2.576 \]

2. Rumus Confidence Interval (σ diketahui):

\[ \bar{x} \pm Z_{\alpha/2} \cdot \frac{\sigma}{\sqrt{n}} \]

3. Standard Error (SE):

\[ SE = \frac{\sigma}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

4. Margin of Error:

\[ ME = z_{\alpha/2} \times SE \]

\[ ME = 2.576 \times 4 \]

\[ ME = 10.304 \]

5. Confidence Interval (CI);

\[ CI_{99\%} = \bar{x} \pm ME \]

\[ CI_{99\%} = 210 \pm 10.304 \]

\[ CI_{99\%} \approx (199.70,\; 220.30) \]

TEAM B

Diketahui

  • \(n = 36\)

  • \(\bar{x} = 210\)

  • \(s = 24\) → σ tidak diketahui

1. Kritis t nilai untuk 90%

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.90 = 0.10 \]

karena interval bersifat dua sisi, maka:

\[ \frac{\alpha}{2} = 0.05 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 36 - 1 = 35 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.05,\; df = 35\) diperoleh nilai t kritis:

\[ t_{0.05,\;35} = 1.690 \]

3. Rumus Umum:

\[ \bar{x} \pm t_{\alpha/2,\;df} \times \frac{s}{\sqrt{n}} \]

4. Standard Error (SE):

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

5. Margin of Error (ME):

\[ ME = t_{\alpha/2} \times SE \]

\[ ME = 1.690 \times 4 \]

\[ ME = 6.76 \]

6. Confidence Interval (CI):

\[ CI_{90\%} = \bar{x} \pm ME \]

\[ CI_{90\%} = 210 \pm 6.76 \]

\[ CI_{90\%} \approx (203.24,\; 216.76) \]

2. Kritis t nilai untuk 95%

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.95 = 0.05 \]

karena interval bersifat dua sisi, maka:

\[ \frac{\alpha}{2} = 0.025 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 36 - 1 = 35 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.025,\; df = 35\) diperoleh nilai t kritis:

\[ t_{0.025,\;35} = 2.030 \]

3. Rumus Umum:

\[ \bar{x} \pm t_{\alpha/2,\;df} \times \frac{s}{\sqrt{n}} \]

4. Standard Error (SE):

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

5. Margin of Error (ME):

\[ ME = t_{\alpha/2} \times SE \]

\[ ME = 2.030 \times 4 \]

\[ ME = 8.12 \]

6. Confidence Interval (CI):

\[ CI_{95\%} = \bar{x} \pm ME \]

\[ CI_{95\%} = 210 \pm 8.12 \]

\[ CI_{95\%} \approx (201.88,\; 218.12) \]

3. Kritis t nilai untuk 99%

1. Tingkat Signifikansi:

\[ \alpha = 1 - 0.99 = 0.01 \]

karena interval bersifat dua sisi, maka:

\[ \frac{\alpha}{2} = 0.005 \]

Derajat kebebasan dihitung sebagai:

\[ df = n - 1 = 36 - 1 = 35 \]

2. Nilai t Kritis:

Berdasarkan tabel distribusi t-Student dengan \(\frac{\alpha}{2} = 0.005,\; df = 35\) diperoleh nilai t kritis:

\[ t_{0.005,\;35} = 2.724 \]

3. Rumus Umum:

\[ \bar{x} \pm t_{\alpha/2,\;df} \times \frac{s}{\sqrt{n}} \]

4. Standard Error (SE):

\[ SE = \frac{s}{\sqrt{n}} \]

\[ SE = \frac{24}{\sqrt{36}} \]

\[ SE = \frac{24}{6} \]

\[ SE = 4 \]

5. Margin of Error (ME):

\[ ME = t_{\alpha/2} \times SE \]

\[ ME = 2.724 \times 4 \]

\[ ME = 10.896 \]

6. Confidence Interval (CI):

\[ CI_{99\%} = \bar{x} \pm ME \]

\[ CI_{99\%} = 210 \pm 10.896 \]

\[ CI_{99\%} \approx (199.10,\; 220.90) \]

4.3 Visualisasi

library(ggplot2)

# Parameter
n <- 36
mean_x <- 210
sigma <- 24
se <- sigma / sqrt(n)

# Density
x <- seq(180, 240, length.out = 1000)
y <- dnorm(x, mean_x, se)
df_density <- data.frame(x = x, y = y)

# CI
df_ci <- data.frame(
  level = factor(c("90%", "95%", "99%"),
                 levels = c("90%", "95%", "99%")),
  z = c(qnorm(0.95), qnorm(0.975), qnorm(0.995))
)

df_ci$lower <- mean_x - df_ci$z * se
df_ci$upper <- mean_x + df_ci$z * se

# Gabung density & CI
df_plot <- merge(df_density, df_ci, by = NULL)
df_plot$y_ci <- ifelse(df_plot$x >= df_plot$lower &
                         df_plot$x <= df_plot$upper,
                       df_plot$y, NA)

# Teks CI (kanan panel)
df_text <- data.frame(
  level = df_ci$level,
  label = paste0(
    "Mean = ", mean_x, "\n",
    "CI = [",
    round(df_ci$lower, 2), ", ",
    round(df_ci$upper, 2), "]"
  ),
  x = 238,
  y = max(y) * 0.85
)

ggplot(df_plot, aes(x, y)) +
  geom_line(color = "black") +
  geom_ribbon(aes(ymin = 0, ymax = y_ci),
              fill = "#6BAF92", alpha = 0.5) +   # 🌿 hijau sage
  geom_vline(xintercept = mean_x, linetype = "dashed") +
  geom_text(data = df_text,
            aes(x = x, y = y, label = label),
            hjust = 1, size = 3, inherit.aes = FALSE) +
  facet_wrap(~ level, ncol = 1) +
  labs(title = "Team A (Z-test): Density dengan Confidence Interval",
       x = "API Latency (ms)",
       y = "Density") +
  theme_minimal()

library(ggplot2)

# Parameter Team B
n <- 36
mean_x <- 210
s <- 24
df <- n - 1
se <- s / sqrt(n)

# Density
x <- seq(180, 240, length.out = 1000)
y <- dnorm(x, mean_x, se)
df_density <- data.frame(x = x, y = y)

# Confidence Interval (t-test)
df_ci <- data.frame(
  level = factor(c("90%", "95%", "99%"),
                 levels = c("90%", "95%", "99%")),
  t = c(qt(0.95, df), qt(0.975, df), qt(0.995, df))
)

df_ci$lower <- mean_x - df_ci$t * se
df_ci$upper <- mean_x + df_ci$t * se

# Gabung density & CI
df_plot <- merge(df_density, df_ci, by = NULL)
df_plot$y_ci <- ifelse(df_plot$x >= df_plot$lower &
                         df_plot$x <= df_plot$upper,
                       df_plot$y, NA)

# Teks CI (kanan panel)
df_text <- data.frame(
  level = df_ci$level,
  label = paste0(
    "Mean = ", mean_x, "\n",
    "CI = [",
    round(df_ci$lower, 2), ", ",
    round(df_ci$upper, 2), "]"
  ),
  x = 238,
  y = max(y) * 0.85
)

# Plot
ggplot(df_plot, aes(x, y)) +
  geom_line(color = "black") +
  geom_ribbon(aes(ymin = 0, ymax = y_ci),
              fill = "#9C89B8", alpha = 0.5) +   # unggu
  geom_vline(xintercept = mean_x, linetype = "dashed") +
  geom_text(data = df_text,
            aes(x = x, y = y, label = label),
            hjust = 1, size = 3, inherit.aes = FALSE) +
  facet_wrap(~ level, ncol = 1) +
  labs(title = "Team B (t-test): Density dengan Confidence Interval",
       x = "API Latency (ms)",
       y = "Density") +
  theme_minimal()

Grafik density ini memperlihatkan bentuk kurva normal dari estimasi rata‑rata API latency (ms) untuk dua pendekatan pengujian: Z‑test (Team A) dan t‑test (Team B), masing‑masing pada tiga tingkat kepercayaan: 90%, 95%, dan 99%. Kurva berbentuk lonceng (bell curve) menunjukkan bahwa nilai rata‑rata sampel 210 ms adalah titik di mana densitas probabilitas tertinggi berada, artinya nilai tersebut paling representatif menurut distribusi sampel. Nilai density menurun saat kita bergerak menjauh dari mean, mencerminkan bahwa rata‑rata populasi yang jauh dari 210 ms memiliki kemungkinan lebih rendah berdasarkan data sampel. Tingkat kepercayaan yang lebih tinggi berkaitan dengan critical value yang lebih besar pada distribusi normal atau t, sehingga rentang intervalnya melebar — ini visual terlihat pada lebar area di bawah kurva yang dibatasi oleh CI. Perbedaan antara grafik Z dan t juga mencerminkan perbedaan pendekatan statistik: Z‑test mengasumsikan standar deviasi populasi diketahui sehingga distribusi normal digunakan, sementara t‑test mengakomodasi standar deviasi yang diestimasi dari sampel, yang menghasilkan distribusi dengan ekor lebih tebal untuk mencerminkan ketidakpastian tambahan.

4.4 Mengapa lebar interval Berbeda

  1. Jelaskan mengapa lebar interval berbeda, meskipun datanya serupa?

Pertama, tingkat kepercayaan (confidence level) yang digunakan berbeda. Semakin tinggi tingkat kepercayaan (misalnya 99% dibanding 90%), maka nilai kritis (nilai z atau t) semakin besar. Nilai kritis yang lebih besar ini membuat batas bawah dan batas atas interval semakin menjauh dari rata-rata, sehingga interval menjadi lebih lebar. Artinya, untuk “lebih yakin”, kita harus menerima ketidakpastian yang lebih besar.

Kedua, jenis distribusi yang digunakan (Z vs t) juga memengaruhi lebar interval. Pada Team A digunakan distribusi Z, sedangkan pada Team B digunakan distribusi t. Distribusi t memiliki ekor yang lebih tebal, terutama ketika ukuran sampel terbatas, sehingga nilai kritis t lebih besar daripada nilai kritis z pada tingkat kepercayaan yang sama. Akibatnya, confidence interval Team B cenderung lebih lebar dibandingkan Team A, meskipun mean dan simpangan bakunya sama.

Ketiga, standard error berperan langsung terhadap lebar interval. Lebar CI sebanding dengan standard error yang dihitung dari simpangan baku dan ukuran sampel. Walaupun datanya serupa, perbedaan asumsi (misalnya populasi diketahui atau tidak diketahui variansnya) dapat menyebabkan perbedaan nilai standard error yang digunakan, sehingga lebar interval ikut berubah.

5 Case Study 5

interval Kepercayaan Satu Sisi: Sebuah perusahaan Software as a Service (SaaS) ingin memastikan bahwa minimal 70% pengguna aktif mingguan memanfaatkan fitur premium.

Dari Eksperimen:

\[ \begin{eqnarray*} n &=& 250 \quad \text{(total users)} \\ x &=& 185 \quad \text{(active premium users)} \end{eqnarray*} \] Manajemen hanya tertarik pada batas bawah dari perkiraan

Tugas:

  1. Identifikasi jenis Interval Kepercayaan dan uji statistik yang tepat.
  2. Hitung Interval Kepercayaan satu sisi (bawah) pada:
    • \(90\%\)
    • \(95\%\)
    • \(99\%\)
  3. Visualisasikan batas bawah untuk semua tingkat kepercayaan.
  4. Tentukan apakah target 70% secara statistik terpenuhi

5.1 Jenis Interval Kepercayaan dan Uji Statistik

  • Parameter yang diestimasi:

Parameter yang ingin diketahui dalam studi ini adalah proporsi populasi\((p_p)\) dari pengguna aktif mingguan yang menggunakan fitur premium. Data diperoleh dalam bentuk jumlah pengguna yang menggunakan fitur premium dari total pengguna, sehingga karakteristik datanya bersifat biner (menggunakan fitur premium atau tidak).

  • Jenis interval kepercayaan:

Interval kepercayaan yang digunakan adalah interval kepercayaan satu sisi (one-sided) dengan batas bawah (lower confidence interval). Pemilihan interval satu sisi dilakukan karena manajemen hanya tertarik untuk memastikan bahwa proporsi pengguna yang menggunakan fitur premium tidak kurang dari nilai tertentu, yaitu 70%, tanpa memperhatikan batas atasnya.

  • Distribusi dan pendekatan statistik:

Karena ukuran sampel cukup besar \((n = 250)\) serta \(n(1 - \hat{p})\) lebih besar dari 5, maka distribusi proporsi sampel dapat didekati dengan distribusi normal, sehingga penggunaan distribusi Z dinilai tepat.

  • Uji statistik yang sesuai:

Berdasarkan kondisi tersebut, uji statistik yang digunakan adalah uji Z untuk satu proporsi (one-proportion Z-test), yang memanfaatkan nilai kritis Z untuk membentuk batas bawah interval kepercayaan sesuai dengan tingkat kepercayaan yang ditetapkan.

5.2 Menghitung Interval Kepercayaan Satu Sisi (Batas Bawah)

Diketahui:

  • Jumlah pengguna:

\[ n = 250 \]

  • Jumlah pengguna aktif fitur premium:

\[ x = 185 \]

  • Hitung proporsi sampel: \[ \hat{p} = \frac{x}{n} \]

\[ \hat{p} = \frac{185}{250} \]

\[ \hat{p} = 0.74 \]

  • Hitung standard error: \[ SE = \sqrt{\frac{\hat{p}(1-\hat{p})}{n}} \]

\[ SE = \sqrt{\frac{0.74(1-0.74)}{250}} \]

\[ SE = \sqrt{\frac{0.74 \cdot 0.26}{250}} \]

\[ SE = \sqrt{0.0007696} \]

\[ SE \approx 0.0277 \]

1. Tingkatan Kepercayaan 90%:

1. Tingkat signifikansi:

\[ \alpha = 1 - 0.90 = 0.10 \]

  • Karena interval dua sisi:

\[ \frac{\alpha}{2} = 0.05 \]

  • Nilai kritis dari tabel Z:

\[ z_{0.05} = 1.28 \]

2. Rumus lower bound one-sided CI: \[ \text{Lower Bound} = \hat{p} - z_{\alpha} \times SE \]

\[ LB_{90\%} = 0.74 - (1.28 \times 0.0277) \]

\[ LB_{90\%} \approx 0.7045 \]

2. Tingkatan Kepercayaan 95%:

1. Tingkat signifikansi:

\[ \alpha = 1 - 0.95 = 0.05 \]

  • Karena interval dua sisi:

\[ \frac{\alpha}{2} = 0.025 \]

  • Nilai kritis dari tabel Z:

\[ z_{0.025} = 1.645 \]

2. Rumus lower bound one-sided CI: \[ \text{Lower Bound} = \hat{p} - z_{\alpha} \times SE \]

\[ LB_{95\%} = 0.74 - (1.645 \times 0.0277) \]

\[ LB_{95\%} \approx 0.6944 \]

3. Tingkatan Kepercayaan 99%:

1. Tingkat signifikansi:

\[ \alpha = 1 - 0.99 = 0.01 \]

  • Karena interval dua sisi:

\[ \frac{\alpha}{2} = 0.005 \]

  • Nilai kritis dari tabel Z:

\[ z_{0.005} = 2.33 \]

2. Rumus lower bound one-sided CI: \[ \text{Lower Bound} = \hat{p} - z_{\alpha} \times SE \]

\[ LB_{99\%} = 0.74 - (2.33 \times 0.0277) \]

\[ LB_{99\%} \approx 0.6755 \]

5.3 Visualisasi

library(plotly)

# ===============================
# DATA
# ===============================
n <- 250
x <- 185
p_hat <- x / n
SE <- sqrt(p_hat * (1 - p_hat) / n)

# Z value (one-sided)
z_vals <- c("90%" = 1.28, "95%" = 1.645, "99%" = 2.33)
LB <- p_hat - z_vals * SE

# ===============================
# DENSITY
# ===============================
p_seq <- seq(0.65, 0.85, length.out = 2000)
dens <- dnorm(p_seq, mean = p_hat, sd = SE)

fig <- plot_ly()

# ===============================
# DENSITY CURVE
# ===============================
fig <- fig %>%
  add_lines(
    x = p_seq,
    y = dens,
    line = list(color = "black"),
    name = "Density"
  )

# ===============================
# CONFIDENCE INTERVAL AREAS
# ===============================

# 99% CI (UNGU - kiri)
fig <- fig %>%
  add_trace(
    x = p_seq[p_seq >= LB["99%"] & p_seq < LB["95%"]],
    y = dens[p_seq >= LB["99%"] & p_seq < LB["95%"]],
    type = "scatter",
    mode = "lines",
    fill = "tozeroy",
    fillcolor = "rgba(117,107,177,0.65)",
    line = list(color = "transparent"),
    name = "99% CI"
  )

# 95% CI (ORANYE - tengah)
fig <- fig %>%
  add_trace(
    x = p_seq[p_seq >= LB["95%"] & p_seq < LB["90%"]],
    y = dens[p_seq >= LB["95%"] & p_seq < LB["90%"]],
    type = "scatter",
    mode = "lines",
    fill = "tozeroy",
    fillcolor = "rgba(253,141,60,0.7)",
    line = list(color = "transparent"),
    name = "95% CI"
  )

# 90% CI (HIJAU - kanan, DIPERKUAT)
fig <- fig %>%
  add_trace(
    x = p_seq[p_seq >= LB["90%"]],
    y = dens[p_seq >= LB["90%"]],
    type = "scatter",
    mode = "lines",
    fill = "tozeroy",
    fillcolor = "rgba(44,162,95,0.85)",
    line = list(color = "rgba(44,162,95,1)"),
    name = "90% CI"
  )

# ===============================
# SAMPLE PROPORTION (GARIS PUTUS-PUTUS)
# ===============================
fig <- fig %>%
  add_lines(
    x = c(p_hat, p_hat),
    y = c(0, max(dens)),
    line = list(color = "black", dash = "dash"),
    name = "Sample Proportion"
  )

# Label Sample Proportion
fig <- fig %>%
  add_annotations(
    x = p_hat,
    y = max(dens),
    text = paste0("Sample Proportion (p̂ = ", round(p_hat, 3), ")"),
    showarrow = TRUE,
    arrowhead = 2,
    ax = 40,
    ay = -40,
    font = list(size = 12, color = "black"),
    bgcolor = "white",
    bordercolor = "black"
  )

# ===============================
# TARGET LINE 70%
# ===============================
fig <- fig %>%
  add_lines(
    x = c(0.70, 0.70),
    y = c(0, max(dens)),
    line = list(color = "blue", dash = "dot"),
    name = "Target 70%"
  )

# ===============================
# LAYOUT
# ===============================
fig <- fig %>%
  layout(
    title = "One-Sided Lower Confidence Intervals (Density)",
    xaxis = list(title = "Sample Proportion"),
    yaxis = list(title = "Density")
  )

fig

5.4 Menentukan target 70% Terpenuhi secara Statistik

  1. Tentukan Apakah target 70% terpenuhi secara statistik?
  • Dengan tingkat kepercayaan 90%, lower bound CI adalah 0.704, lebih besar dari target 70% → target terpenuhi. Perusahaan bisa cukup yakin bahwa setidaknya 70% pengguna aktif menggunakan fitur premium.

  • Dengan tingkat kepercayaan 95%, lower bound CI adalah 0.694, sedikit di bawah target → target tidak sepenuhnya terpenuhi. Ada ketidakpastian lebih besar, sehingga tidak bisa dipastikan secara statistik bahwa target tercapai.

  • Dengan tingkat kepercayaan 99%, lower bound CI adalah 0.675, jauh di bawah target → target tidak terpenuhi. Interval sangat lebar pada tingkat keyakinan tinggi, sehingga data tidak cukup untuk memastikan target.

Intinya:

Target 70% hanya dapat dipastikan secara statistik pada tingkat kepercayaan 90%. Semakin tinggi tingkat kepercayaan yang diminta, semakin besar ketidakpastian terhadap target minimal.

6 Referensi

  • Montgomery, D. C., & Runger, G. C. (2014). Applied Statistics and Probability for Engineers (6th ed.). Wiley.

  • Field, A. (2013). Discovering Statistics Using IBM SPSS Statistics (4th ed.). Sage.

  • Agresti, A., & Coull, B. A. (1998). Approximate is better than “exact” for interval estimation of binomial proportions. The American Statistician, 52(2), 119–126.

  • Moore, D. S., McCabe, G. P., & Craig, B. A. (2012). Introduction to the Practice of Statistics (7th ed.). W.H. Freeman.

  • Kurva normal dan critical values untuk confidence intervals: “Confidence Intervals Explained: Definition, Formula, and Real Examples” — nilai z seperti 1.645, 1.96, 2.576 sesuai level 90%, 95%, 99% digunakan untuk mengonstruksi CI pada distribusi normal. https://analystprep.com/blog/confidence-intervals-explained-definition-formula-and-real-examples/?utm_source.

  • perbedaan penggunaan t‑distribution ketika standar deviasi populasi tidak diketahui https://www.scribbr.com/statistics/confidence-interval/?utm_source