Pada baris pertama, digunakan perintah “set.seed(123)” yang berfungsi untuk mengatur angka acak awal. Tujuannya agar data acak yang dihasilkan selalu sama setiap kali kode dijalankan, sehingga hasil analisis bisa direplikasi dengan konsisten.
set.seed(123)
Berikut syntax unruk membuat data waktu tunggu (distribusi ekponensial) dengan rate = mean
kantin_A <- rexp(30, rate = 1/15)
kantin_B <- rexp(30, rate = 1/12)
kantin_C <- rexp(30, rate = 1/18)
Untuk menampilkan data dengan car panggil data satu persatu
kantin_A
## [1] 12.6518589 8.6491541 19.9358230 0.4736604 0.8431646 4.7475182
## [7] 4.7134094 2.1790021 40.8935470 0.4373017 15.0724509 7.2032209
## [13] 4.2152044 5.6567675 2.8242606 12.7467919 23.4480531 7.1814062
## [19] 8.8640225 60.6151757 12.6472460 14.4880682 22.2791369 20.2206673
## [25] 17.5279348 24.0877851 22.4511430 23.5597882 0.4765162 8.9677454
kantin_B
## [1] 26.014077 6.079389 3.114694 31.162705 14.748309 9.488181 7.551361
## [8] 15.055692 7.064216 13.551480 5.044378 86.532091 10.148664 2.706504
## [15] 13.204066 26.979668 16.364812 6.916700 32.703310 15.745957 1.087096
## [22] 3.674446 12.806557 3.762195 11.695682 22.653880 6.775063 30.923536
## [29] 12.572349 12.293296
kantin_C
## [1] 18.5016531 5.1240323 28.1349340 0.7575893 1.7753560 1.7742476
## [7] 5.0469329 5.3241653 17.5037337 16.6324900 29.5632815 29.1584298
## [13] 45.6506197 27.3878932 6.8402557 4.2932334 8.3967736 0.7608861
## [19] 5.7541842 11.5849966 10.3061359 3.8889990 80.9761212 33.4276300
## [25] 12.3382555 25.9101473 31.1607717 22.4060994 26.3394101 27.6730916
Untuk melihat data secara menyeluruh maka dijadikan satu dengan cara matriks
waktu <- c(kantin_A, kantin_B, kantin_C)
kantin <- factor(rep(c("Kantin A", "Kantin B", "Kantin C"), each = 30))
kantin
## [1] Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A
## [9] Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A
## [17] Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A
## [25] Kantin A Kantin A Kantin A Kantin A Kantin A Kantin A Kantin B Kantin B
## [33] Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B
## [41] Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B
## [49] Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B Kantin B
## [57] Kantin B Kantin B Kantin B Kantin B Kantin C Kantin C Kantin C Kantin C
## [65] Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C
## [73] Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C
## [81] Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C Kantin C
## [89] Kantin C Kantin C
## Levels: Kantin A Kantin B Kantin C
Untuk mengetahu nimai rata-rata,median, standar deviasi dan simpangan baku perkantin Kantin A,B, dan C
summary_stats <- data.frame(
Kantin = c("A", "B", "C"),
Mean = c(mean(kantin_A), mean(kantin_B), mean(kantin_C)),
Median = c(median(kantin_A), median(kantin_B), median(kantin_C)),
SD = c(sd(kantin_A), sd(kantin_B), sd(kantin_C)),
Varian = c(var(kantin_A), var(kantin_B), var(kantin_C))
)
print(summary_stats)
## Kantin Mean Median SD Varian
## 1 A 13.66859 10.80750 13.00671 169.1746
## 2 B 15.61401 12.43282 16.10147 259.2574
## 3 C 18.14641 14.48537 16.95738 287.5528
Untuk melihat data secara visualisasi kita bisa menggunakan Histogram dan Box Plot
#Histogram
hist(kantin_A, main="Histogram Kantin A", xlab="Waktu Tunggu", col="skyblue")
hist(kantin_B, main="Histogram Kantin B", xlab="Waktu Tunggu", col="lightgreen")
hist(kantin_C, main="Histogram Kantin C", xlab="Waktu Tunggu", col="salmon")
#Box Plot
boxplot(waktu ~ kantin, main="Boxplot Waktu Tunggu per Kantin",
xlab="Kantin", ylab="Waktu Tunggu (menit)", col=c("skyblue","lightgreen","salmon"))
Uji untuk mengetahui satu populasi, dua populasi dan proporsi
#Satu Populasi
uji_satu_pop <- t.test(kantin_A, mu = 15)
print(uji_satu_pop)
##
## One Sample t-test
##
## data: kantin_A
## t = -0.56067, df = 29, p-value = 0.5793
## alternative hypothesis: true mean is not equal to 15
## 95 percent confidence interval:
## 8.811808 18.525381
## sample estimates:
## mean of x
## 13.66859
#Uji Dua Populasi
uji_dua_pop <- t.test(kantin_A, kantin_B)
print(uji_dua_pop)
##
## Welch Two Sample t-test
##
## data: kantin_A and kantin_B
## t = -0.51479, df = 55.544, p-value = 0.6087
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## -9.517094 5.626259
## sample estimates:
## mean of x mean of y
## 13.66859 15.61401
uji_proporsi <- prop.test(sum(kantin_A > 15), length(kantin_A), p = 0.5)
print(uji_proporsi)
##
## 1-sample proportions test with continuity correction
##
## data: sum(kantin_A > 15) out of length(kantin_A), null probability 0.5
## X-squared = 1.6333, df = 1, p-value = 0.2012
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
## 0.2054281 0.5609198
## sample estimates:
## p
## 0.3666667
Untuk mengetahuiuji rata-rata kelompok di lakukan anova
model <- aov(waktu ~ kantin)
summary(model)
## Df Sum Sq Mean Sq F value Pr(>F)
## kantin 2 302 151.2 0.634 0.533
## Residuals 87 20764 238.7
Hasil analisis ANOVA menunjukkan bahwa nilai F yang diperoleh sebesar 0,24 dengan p-value sebesar 0,787. Dengan menggunakan batas signifikansi alpha = 0,05, terlihat bahwa p-value jauh lebih besar dari nilai alpha. Hal ini mengindikasikan bahwa perbedaan rata-rata waktu tunggu antar ketiga kantin tidak signifikan secara statistik. Dengan demikian, dapat disimpulkan bahwa tidak terdapat perbedaan bermakna pada rata-rata waktu tunggu di Kantin A, Kantin B, maupun Kantin C. Oleh karena hasilnya tidak signifikan, maka tidak diperlukan uji lanjut menggunakan metode Tukey.