Misalkan kita memiliki percobaan pelemparan koin sebanyak 10 kali dengan probabilitas munculnya angka (sukses) adalah 0.5.
set.seed(999)
nDiskrit <- 1000 # jumlah simulasi
sizeDiskrit <- 10 # jumlah percobaan
probDiskrit <- 0.5 # probabilitas sukses
binomial_samples_diskrit <- rbinom(nDiskrit, sizeDiskrit, probDiskrit)
hist(binomial_samples_diskrit, main="Histogram Distribusi Binomial", col="cyan", xlab="Jumlah sukses", breaks=10)
Histogram menunjukkan distribusi jumlah keberhasilan dalam 10 percobaan.
Semakin tinggi probabilitas sukses, semakin bergeser distribusi ke
kanan.
set.seed(619)
nKontinu <- 1000 # jumlah sampel
meanKontinu <- 50 # rata-rata
sdKontinu <- 10 # standar deviasi
normal_samples_kontinu <- rnorm(nKontinu, meanKontinu, sdKontinu)
hist(normal_samples_kontinu, main="Histogram Distribusi Normal", col="magenta", xlab="Nilai", breaks=30, probability=TRUE)
# Tambahkan kurva densitas
curve(dnorm(x, meanKontinu, sdKontinu), col="cyan", lwd=2, add=TRUE)
Histogram menunjukkan bahwa data yang dihasilkan mengikuti distribusi
normal dengan puncak di sekitar rata-rata 50. Kurva densitas normal
(cyan) juga menunjukkan kecocokan dengan histogram.
Kak Seto ingin mensimulasikan 1000 pelanggan untuk memahami distribusi waktu tunggu mereka dan memvisualisasikannya dalam histogram.
set.seed(111)
nCafe <- 1000 # jumlah pelanggan yang disimulasikan
lambdaCafe <- 1/5 # parameter distribusi eksponensial (1/rata-rata waktu tunggu)
# Simulasi waktu tunggu
waiting_times_cafe <- rexp(nCafe, rate=lambdaCafe)
# Plot histogram waktu tunggu
hist(waiting_times_cafe,
main="Histogram Waktu Tunggu Pelanggan di Cafe Kak Seto",
col="lightgreen",
xlab="Waktu Tunggu (menit)",
breaks=30,
probability=TRUE)
# Tambahkan kurva distribusi eksponensial
curve(dexp(x, rate=lambdaCafe), col="red", lwd=2, add=TRUE)